When the website enters maintenance mode, there are a few steps to ensure the database is not updated while we dump the data, but still allow the website to display pages.
Disable ingress commit processing
In the ingress host (for example, x8dtu-ingress01), stop the FreshPorts daemon:
[dan@x8dtu-ingress01:~] $ sudo svc -d /var/service/freshports/ [dan@x8dtu-ingress01:~] $
Ensure the scripts have finished, you should not see any perl:
[dan@x8dtu-ingress01:~] $ ps auwwx | grep perl dan 73052 0.0 0.0 6660 2524 3 S+J 13:07 0:00.00 grep perl [dan@x8dtu-ingress01:~] $
Set website maintenance mode
On the website host (e.g. x8dtu-nginx01), in /usr/local/etc/freshports/constants.local.php, ensure this constant is set to TRUE:
define('IN_MAINTENCE_MODE', false);
Maintenance mode can be verified by visiting:
- https://www.freshports.org/customize.php – should redirect to https://www.freshports.org/now-in-maintenance-mode.php
- Visiting https://www.freshports.org/–/status/ where you should see “We are in in maintenance mode”.
Disable logins
On the website host (e.g. x8dtu-nginx01), in /usr/local/etc/freshports/constants.local.php, ensure this constant is defined, the actual value does not mattter.:
define('NO_LOGIN', true);
Confirm logins are disabled by visiting the status page and the login page (which should redirect to the home page).
Reverting maintenance mode
To come back out of maintenance mode, revert your changes, as above.