Мои 2 цента:
Вы можете использовать .htaccess
для перенаправления на другую страницу в режиме обслуживания.
Три разных примера:
RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} !^11\.111\.111\.111
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ http://domain.com/maintenance.html [R=307,L]
.htaccess Перенаправление страницы «Не работает для обслуживания»
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} !/maintenance.html$
RewriteCond %{REMOTE_HOST} !^888\.888\.888\.888
RewriteRule $ /maintenance.html [R=302,L]
Перенаправление на страницу обслуживания во время обновления с использованием .htaccess
# redirect all visitors to alternate site but retain full access for you
ErrorDocument 403 http://www.alternate-site.com
Order deny,allow
Deny from all
Allow from 99.88.77.66
auto_prepend_file строка
Задает имя файла, который автоматически анализируется перед основным файлом. Файл включается так, как если бы он был вызван функцией require (), поэтому используется include_path.
Специальное значение none отключает автоматическое добавление.
вы можете установить это в php.ini или в apache (virtual ) host-файл или .htaccess с помощью php_flag auto_prepend_file file.php
[или php_admin_flag (?)]
edit
Самый простой способ - это централизовать часть логики создания сайта. Таким образом, вы можете включить режим обслуживания и перенаправить любых пользователей, не являющихся администраторами, на другую страницу. Это было бы несложно сделать, поскольку я полагаю, что у вас есть код, который постоянно появляется повсюду, поэтому просто расширьте функциональность входа в систему, чтобы проверить глобальную переменную (если у вас нет общих глобальных переменных на вашей странице вы можете просто установить его в .htaccess через setenv).