重定向所有网站 apache2 的流量

重定向所有网站 apache2 的流量

我如何将所有网站(而不是其中任何一个)的流量重定向到 apache2 conf 文件中的页面?

目标是为所有域创建一个维护页面。

答案1

您需要使用以下重写规则:

RewriteEngine On
RewriteCond %{REQUEST_URI} !=/maintenance.html
RewriteRule ^ /maintenance.html [R=301]

这应该将所有请求重定向到该maintenance.html页面。

答案2

为了轻松更改多个虚拟主机,请将其添加到所有虚拟主机(只需执行一次):

Include maintenance-status.conf

添加类似@Khaled 的回答的内容/etc/apache2/maintenance-on.conf

在 处创建一个/etc/apache2/maintenance-status.conf指向 的符号链接/etc/apache2/maintenance-off.conf,该符号链接应该是一个空文件。

在您的 cron 作业中,只需在开始和结束时重新指向该链接,并在每次之后让 Apache 正常重启。

如果可以的话,最好使用 PHP(或任何您使用的脚本语言)来执行此操作,并使用文件或数据库条目来触发它。

相关内容