2011-03-25 52 views
0

問題是這個虛擬主機指向與主站點相同的根位置。它只是爲了反映www.mysite.com在sub.mysite.com上的內容。這禁止我在我的.htaccess中使用允許和拒絕規則,因爲這也會影響www.mysite.com流量。我已經使用也嘗試:如何將對虛擬主機(子域)的訪問權限限制爲幾個特定的​​IP?

RewriteCond %{HTTP_HOST} ^sub.mysite.com$ 
RewriteCond %{REMOTE_ADDR} !^123\.45\.67\.89$ [OR] 
RewriteCond %{REMOTE_ADDR} !^123\.55\.76\.234$ [OR] 
RewriteCond %{REMOTE_ADDR} !^12\.54\.67\.87$ 
RewriteRule ^.*$ http://www.mysite.com [R=301] 

的IP地址不屬於一個範圍,所以我想產生一個單行正則表達式來覆蓋所有的人都將無法正常工作,並使用一系列條件句像上面根本沒有工作,並且顯得很雜亂。上面的IP只是例子。我需要限制訪問大約10個唯一的IP地址。有任何想法嗎?

回答

3

嘗試在目錄節點下的虛擬主機中定義允許和拒絕。這應該只對你想要的虛擬主機有效。

<VirtualHost 111.22.33.55:8080> 
    ServerName sub.mysite.com 
     <Directory proxy:> 
      Order Deny,Allow 
      Deny from all 
      Allow from 111.22.33 
     </Directory> 
</VirtualHost> 
+0

是需要'代理:'部分嗎?我對mod_proxy不是很熟悉。 – Garrett 2011-03-25 19:04:02

+0

您還可以填寫常規目錄名稱,如「httpdocs」或「/」。 – Trantinator 2011-03-25 19:37:30

+0

這很好。謝謝。 – Garrett 2011-03-28 17:54:07