Mod_rewrite - 拒绝特定页面以外的访问

时间:2013-11-14 15:21:49

标签: regex apache .htaccess mod-rewrite

有一个重写规则,可以将不在办公室的任何人重定向到暂停页面。

RewriteEngine On

RewriteCond %{REMOTE_ADDR} !^x\.x\.x\.x$
RewriteRule . holdingpage.html

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [NC,L] 

我需要允许Google访问其Google验证文件: https://www.example.com/google23423423463.html

有没有办法添加重写以允许不在办公室的任何人访问此页面,以及在访问任何其他页面时被重定向到保留页面?

非常感谢,

1 个答案:

答案 0 :(得分:1)

确定你能做到:

RewriteEngine On

# If request is for special page, skip all rules below
RewriteRule ^google23423423463\.html$ - [L]

RewriteCond %{REMOTE_ADDR} !^x\.x\.x\.x$
RewriteRule . holdingpage.html [L]

RewriteCond %{REMOTE_ADDR} ^x\.x\.x\.x$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]