1.4 KiB
1.4 KiB
Software architecture
Program flow
init.php
- Initializes common values
router.php
- Receives every external HTTP request from the web server, executes actions required in any case, executes matching code in
pg-act
if appropriate, and callsview.php
either way. pg-act/
- Executed when a form is submitted: checks that every parameter is valid and secure, then executes the feature of the page according to the parameters.
view.php
- Displays global HTML and includes matching file from
pg-view
. pg-view/
- Displays the main page content (notably HTML forms), may sometimes display form output passed through the
$data
array.
The output
function is used to return success or error messages and stop processing of the request.
Other components
fn/
- Functions, grouped by concerned service
jobs/
- CLI scripts ; should be run as the same user as the rest of the program (e.g.
sudo -u servnest php /srv/servnest/core/jobs/something.php
) sftpgo-auth.php
- When someone tries to log in over SFTP, SFTPGo sends username and password to this script, which queries the database and replies whether authentication succeeded or not.
DOCS/
- Documentation (some important or standard files may be directly in the root)
css/
- Each
.css
file in this directory is declared in every page. db/
- SQlite database, the only directory writable by the program
locales/
- Gettext translations, see translation.md