2012-12-20 68 views
0

我想允許訪問特定的域。例如,如果域包含asdf這個詞,它應該允許訪問。我問前的最後嘗試是:.htaccess允許url包含單詞

RewriteEngine on 
RewriteCond %{HTTP_REFERER} !^.*asdf.*$ [NC,OR] 
RewriteCond %{HTTP_REFERER} !^.*1234.*$ 
#RewriteRule .* - [F] 

所以我在這裏試圖限制對所有但包含ASDF或1234

回答

0

Anubhava給了我一個線索,但不與HTTP_HOST。最後問題是OR。 現在下面工作就像一個魅力:

RewriteEngine on 
RewriteCond %{HTTP_REFERER} !^.*(1234|asdf).* [NC] 
RewriteRule .* - [F] 

那麼HTTP_REFERER做了它應該做的(檢查域訪問)。和|作爲我需要的論據。

0

您需要使用%{HTTP_HOST}用於檢查URL,而不是%{HTTP_REFERER}域的域。

你可以試試這個代碼:

RewriteEngine on 
RewriteCond %{HTTP_HOST} !^.*(asdf|1234)\. [NC] 
RewriteRule .* - [F] 
+0

讓所有人都可以訪問 – Alexk

+0

事實並非如此,它會阻止任何沒有'asdf'或'1234'作爲域的URL。你真的嘗試了什麼網址?還要在你的問題中發佈你最新的.htaccess。 – anubhava

+0

感謝您爲實際給我提供線索的努力或問題,並解決了問題,我發佈了答案。順便說一句,正如我所說的,當我的.htaccess正是你所說的允許訪問每個人。 – Alexk