2009-02-07 56 views
0

好吧,我用下面的代碼來重定向沒有誰是我的IP到即將推出頁面的用戶:布爾與在.htaccess

rewritebase/
rewritecond %{REMOTE_HOST} !(^1\.2\.3\.4) 
rewritecond %{REQUEST_URI} !/comingsoon\.html$ 
rewriterule .* http://www.andrew-g-johnson.com/comingsoon.html [R=302,L] 

我想讓它使我有兩個IP的那是允許的,任何想法如何?

回答

1

我實際上會推薦Cletus的建議,但是如果你想堅持使用.htaccess,也可以添加更多條件的條件(好處在於它比將它們連接成一個長正則表達式更清晰) :

rewritebase/
rewritecond %{REMOTE_HOST} !(^1\.2\.3\.4) 
rewritecond %{REMOTE_HOST} !(^5\.6\.7\.8) 
# and so forth 
rewritecond %{REQUEST_URI} !/comingsoon\.html$ 
rewriterule .* http://www.andrew-g-johnson.com/comingsoon.html [R=302,L] 
1

你可以指定一個正則表達式,如:

(1\.2\.3\.4|5\.6\.7\.8) 

而是變得笨拙,你想要的更多的異常。

您可能想要做的事情改爲使用mod_access(假設您使用的是Apache)並帶有allow和deny指令。

order deny, allow 
deny all 
allow from 1.2.3.4 
allow from 5.6.7.8 
ErrorDocument 403 http://www.andrew-g-johnson.com/comingsoon.html 

結合403即將推出的自定義錯誤文檔。

0

RewriteCond指令與AND隱式結合。所以,你只需要添加另一個RewriteCond指令來表達這一點:

RewriteCond %{REMOTE_HOST} !^1\.2\.3\.4$ 
RewriteCond %{REMOTE_HOST} !=5.6.7.8 
RewriteRule !^comingsoon\.html$ comingsoon.html [R=302,L] 

此外,您應指定開始地址的結束usind ^$或做=逐一比較。