Savannah frontend setup
This page describes the configuration needed for Savannah
current frontend web server and PHP code. The server is
called frontend2 (https://frontend2.savannah.gnu.org).
Further reading about Savannah server:
- SavannahArchitecture - overview of the current setup (i.e. vcs, mgt, frontend, internal, download).
- SavannahServices - services/daemons available on Savannah hosts.
- SavannahInternals - Savannah inner-workings.
- SavannahHosts - Configuration of the new servers.
- SavaneSetup - Updating Savane installation.
Further reading about Savannah web frontend:
- RunningSavaneLocally - Running Savannah PHP code locally.
- FrontEnd - Notes about the current frontend setup.
- FrontEndDevelopmentSite - Setting up development sites for Savannah.
General information
Savannah web frontend (i.e. https://savannah.gnu.org)) is written in PHP.
It uses a MariaDB database running on internal0.
The code repository is called 'savane', available at http://git.savannah.gnu.org/cgit/administration/savane.git.
The production machine runs the head of the 'frontend' branch, see Releasing Savane.
For details on how Savane is installed, see Savane setup.
Apache/PHP configuration file location
init.php accepts a fallback variable SV_LOCAL_INC_PREFIX, which
is referenced in sites-available/vhosts-nongnu.inc:
SetEnv SV_LOCAL_INC_PREFIX /etc/savane/nongnu-conf.
For savannah.gnu.org as opposed to savannah.nongnu.org, init.php uses
the configured default.
"Site-specific" files
Several sections of the displayed HTML on the Savannah website are taken from files in frontend/site-specific/ of the source tree of Savane.
Savannah license list offered when registering new groups is also stored in one of those files.
Mail messages
Savannah PHP code runs under apache as www-data user.
Mail messages sent to www-data (cron and email errors)
are now aliased to root
(http://lists.gnu.org/archive/html/savannah-hackers-public/2016-05/msg00058.html).