我有2个以下的网址重定向,
example.host.com/index.php
host.com/example/index.php
当服务器处于维护状态时,我想将它们重定向到:
example.host.com/maintenance.php
host.com/example/maintenance.php
在.htaccess的帮助下
我知道如何分别实现它们,但现在我想要一个单一的编剧为我做这个工作。
以下是我在.htaccess中写的内容,但没有按预期工作。
Options FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} !/maintenance.php$ [NC]
RewriteRule (.*?)/([^/]+)/?$ $1/maintenance.php [R=307,L]
任何帮助或想法为什么它不起作用?
答案 0 :(得分:1)
您可以使用此单一规则:
Options FollowSymlinks
RewriteEngine on
# generate dynamic rewrite base var
RewriteCond %{REQUEST_URI}::$1 ^(.*?/)(.*)::\2$
RewriteRule ^(.*)$ - [E=BASE:%1]
RewriteRule !maintenance\.php$ %{ENV:BASE}maintenance.php [R=307,L,NC]