threadr.lostcave.ddnss.de/README.md

56 lines
3.0 KiB
Markdown
Raw Normal View History

2020-01-02 12:33:49 +01:00
# Git based automatic web deployment system
This repository will be automagically pulled by the web server each time something is pushed by a user.
## Symlinks
The following files and directories are linked to areas where they can be accessed by the web server:
2020-03-03 13:57:14 +01:00
* `index.html``*/common/index.html` (http redirect)
* `icon.png``*/common/icon.png` (unused)
2020-02-19 15:20:02 +01:00
* `threadr/``*/common/threadr/` (everything else acessible by the web server)
2020-01-02 12:33:49 +01:00
* `default.html``lostcave.ddnss.de/index.html` (http redirect)
* `admin.php``admin.strassenkind.ip/index.php` (future management page, maybe for services, available sites, users, etc?)
2020-03-03 13:57:14 +01:00
* `strassenkind.php``strassenkind.ip/index.php` (status page)
* `commands_status.conf``strassenkind.ip/commands_status.conf`
* `commands_ondemand.conf``strassenkind.ip/commands_ondemand.conf`
2020-03-04 21:42:19 +01:00
* `internal.css``strassenkind.ip/style.css`
2020-02-17 02:06:40 +01:00
## Variables handled by the deployment script
Here is the place for variables that will be replaced automatically on the server. Using them is encouraged. Using the paths is DISCOURAGED.
This way, it is possible to change folder names around and fix the URLs in one place for all files simultaneously.
2020-03-03 14:15:12 +01:00
### Pass 0:
* `%NAVBAR%` → the code used to build the navbar, should remain in pass 0 as it may contain other variables
2020-03-03 14:16:24 +01:00
2020-03-03 14:15:12 +01:00
### Pass 1:
Looks quite empty at this point
2020-03-03 14:16:24 +01:00
2020-03-03 14:15:12 +01:00
### Pass 2:
* `%CONTENT_DIR%` → The part of the URL between the domain name and the destination (e.g. https://lostcave.ddnss.de**/common/threadr/**about/), should remain in the last pass
* `%NO_CHEAP_SESSION_STEALING%` → checks the request origin against the values stored in the session cookie, add this before any actual data is transmitted (as in before any HTML code or echo commands because this affects the HTTP header)
* `%PLEAZE_NO_CACHE%` → adds header information, same as above goes here
## Some server variables that might turn out to be useful (example):
2020-02-17 02:06:40 +01:00
{
"HTTP_USER_AGENT":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:73.0) Gecko\/20100101 Firefox\/73.0",
2020-02-17 02:07:16 +01:00
"REMOTE_ADDR":"10.1.1.3"
}
2020-02-21 10:02:18 +01:00
## TODO:
2020-02-21 10:13:28 +01:00
* add `private public visible` to `boards`
* cookie policy and eula
2020-02-21 23:52:34 +01:00
* make text replacement tool file based
2020-02-21 10:13:28 +01:00
* signup redirect: add check for existing users
* signup redirect: return redirect header, change index to php for handling highlighting of affected boxes
* userhome: setting for users that use VPNs/Proxies
2020-02-22 18:44:58 +01:00
* frontend: dropdown menus?
* internal status site: add fail2ban status
2020-02-23 21:30:49 +01:00
* add reverse proxy or similar to admin tools to a user account locked external page
2020-02-25 16:05:36 +01:00
* email verification
* Navbar build script (navbar.php → variable_grabbler.passX.json)
2020-03-03 14:02:54 +01:00
* recruit some people
2020-03-02 14:47:04 +01:00
* separate home and my feed in %NAVBAR% (or redirect seemlessly)
* allow caching of *some* files
2020-03-02 14:48:38 +01:00
* put the profile and logout links in a dropdown menu
2020-03-03 13:57:14 +01:00
* remove unused symbolic links from the server directory
2020-03-03 14:02:54 +01:00
* change cookie storage to either an encrypted cookie or a database
2020-03-04 21:42:19 +01:00
* add a table for posts/threads
* add a feed of some sort