как я могу перенаправить трафик всех веб-сайтов (а не одного из них) на страницу в файле conf apache2?
цель - создать страницу обслуживания для всех доменов.
Вам необходимо использовать следующие правила перезаписи:
RewriteEngine On
RewriteCond %{REQUEST_URI} !=/maintenance.html
RewriteRule ^ /maintenance.html [R=301]
Это должно перенаправить все запросы на maintenance.html
страница.
Чтобы легко изменить множество vhosts, добавьте это ко всем (вам нужно сделать это только один раз):
Include maintenance-status.conf
Добавьте что-то вроде ответа @ Khaled в /etc/apache2/maintenance-on.conf
.
Создайте символическую ссылку на /etc/apache2/maintenance-status.conf
указывая на /etc/apache2/maintenance-off.conf
, который должен быть пустым файлом.
В своем задании cron просто перенаправьте эту ссылку в начале и в конце и дайте Apache плавный перезапуск после каждого из них.
Возможно, лучше сделать это на PHP (или на любом другом языке сценариев, который вы используете) и запустить его с помощью файла или записи в базе данных, если сможете.