[英]Why doesn't my .htaccess file redirect properly?
這是我的代碼:
Header set Cache-Control "max-age=0, private, no-store, no-cache, must-revalidate"
RewriteEngine on
RewriteCond %{REQUEST_URI} !(admin)
RewriteRule !maintenance\.php$ /maintenance.php [R=301,L]
我想將網站上的所有流量都重定向到maintenance.php,但對/ admin中文件的任何請求除外。 我已經嘗試了很多組合,但這些組合永遠都無效。 無論如何,它總是重定向。 我不知道是什么原因造成的。
更新:我想通了一些東西。 如果我將admin文件夾中的.htaccess注釋掉,則Ben的代碼有效。 這里是代碼:
AuthType Basic
AuthName "Restricted area"
AuthUserFile "/home1/user/.htpasswds/public_html/example/admin/passwd"
require valid-user
我可以對這個.htaccess文件做些什么才能使其工作?
不要為此目的使用永久重定向R=301
,因為您的網站不是永久維護的站點。 僅使用臨時重定向R=302
,否則即使您刪除此規則,您的用戶也將始終看到維護頁面,因為R=301
被瀏覽器緩存。
%{REQUEST_URI}
以/
開頭。
RewriteCond %{REQUEST_URI} !^/admin
RewriteCond %{REQUEST_URI} !^/maintenance.php$
RewriteRule ^ /maintenance.php [R=302,L]
為什么不在.htaccess中使用此行DirectoryIndex maintenance.php
來重定向到此頁面。 您的網站已經准備好了,您可以通過注釋上面的行來刪除維護模式
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.