我正在嘗試編寫一個規則來將所有URL重定向到一個臨時頁面,以便可以完成某些站點更新操作,但它會以無限循環結束。臨時重定向到維護頁面
RewriteCond %{HTTP_HOST} ^(.*)mysite\.com$
RewriteCond %{REQUEST_URI} !^(.*)temp$
RewriteRule ^(.*)$ http://www.mysite.com/temp [R=307,L]
如何檢查它是否是臨時頁面?
我正在嘗試編寫一個規則來將所有URL重定向到一個臨時頁面,以便可以完成某些站點更新操作,但它會以無限循環結束。臨時重定向到維護頁面
RewriteCond %{HTTP_HOST} ^(.*)mysite\.com$
RewriteCond %{REQUEST_URI} !^(.*)temp$
RewriteRule ^(.*)$ http://www.mysite.com/temp [R=307,L]
如何檢查它是否是臨時頁面?
您需要爲維護文件以外的所有請求編寫規則。
的.htaccess應該是:
RewriteEngine On
RewriteBase/
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ http://domain.com/maintenance.html [R=307,L]
我要做的是將所有流量重定向到一個maintenance.html頁面時,它不是從我的IP到來。
第一個重寫條件避免了無限循環。
RewriteCond %{REQUEST_URI} !/maintenance.html$
RewriteCond %{REMOTE_ADDR} !^172\.16\.254\.1$
RewriteRule $ /maintenance.html [R=302,L]
它的工作原理,我試過了。它會將所有請求重定向到維護頁面。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.000
RewriteCond %{REQUEST_URI} !/maintenance.html$ [NC]
RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif) [NC]
RewriteRule .* /maintenance.html [R=302,L]
</IfModule>