2016-02-14 65 views
1

我們提供來自我們的www。和img1/2/3子域。我們已經成功地阻止了從WWW盜鏈的規則。但不是img1/2/3。兩部分的問題:爲什麼img1/2/3在www的時候不起作用,並且有辦法將這種方法節約成一條規則?從子域名停止盜鏈

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain.org [NC] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(img1\.)?domain.org [NC] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(img2\.)?domain.org [NC] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(img3\.)?domain.org [NC] 
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L] 

非常感謝。

回答

1

您需要在前三個條件中使用OR標誌,或者將三個條件合併爲一個。

OR標誌:

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain\.org [NC,OR] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(img1\.)?domain\.org [NC,OR] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(img2\.)?domain\.org [NC,OR] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(img3\.)?domain\.org [NC] 
RewriteRule .(jpg|jpeg|png|gif)$ - [NC,F,L] 

摺疊成一個條件

RewriteCond %{HTTP_REFERER} !^http(s)?://((www|img(1|2|3)\.)?domain\.org [NC] 
+1

倒塌的版本是正是我需要的。非常感謝。 –