43 lines
2.3 KiB
Markdown
43 lines
2.3 KiB
Markdown
# 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:
|
|
* `index.html` → `*/common/index.html` (the website as seen by the majority of the users, maybe a login page?)
|
|
* `icon.png` → `*/common/icon.png` (self-explanatory)
|
|
* `threadr/` → `*/common/threadr/` (everything else acessible by the web server)
|
|
* `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?)
|
|
* `strassenkind.php` → `strassenkind.ip/index.php` (future status page)
|
|
* `commands_status.conf` → `strassenkind.ip/commands_status.conf`
|
|
* `commands_ondemand.conf` → `strassenkind.ip/commands_ondemand.conf`
|
|
|
|
## 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.
|
|
* `%CONTENT_DIR%` → The part of the URL between the domain name and the destination (e.g. https://lostcave.ddnss.de**/common/threadr/**about/)
|
|
|
|
## Some server variables that might turn out to be useful (example):
|
|
{
|
|
"HTTP_USER_AGENT":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:73.0) Gecko\/20100101 Firefox\/73.0",
|
|
"REMOTE_ADDR":"10.1.1.3"
|
|
}
|
|
|
|
## TODO:
|
|
* add `private public visible` to `boards`
|
|
* cookie policy and eula
|
|
* make text replacement tool file based
|
|
* %FORCE_LOGOUT%
|
|
* 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
|
|
* frontend: dropdown menus?
|
|
* internal status site: add fail2ban status
|
|
* add reverse proxy or similar to admin tools to a user account locked external page
|
|
* email verification
|
|
* Navbar build script (navbar.php → variable_grabbler.passX.json)
|
|
* recruit someone
|
|
* separate home and my feed in %NAVBAR% (or redirect seemlessly)
|
|
* allow caching of *some* files
|
|
* put the profile and logout links in a dropdown menu
|