2009-08-19 70 views
5

我發現this web site生成.htaccess來阻止某個國家的訪問。如何只允許在國家內訪問

問題在於我只允許在挪威境內訪問。如果我使用這項服務,列表將會很長,因爲我必須列出所有國家的IP地址。

有沒有辦法允許在國內訪問,我的情況是挪威?

+1

我可能是錯的(糾正我,如果我),但不會工作,如果你將交換這些值從生成.htaccess從命令允許,拒絕命令拒絕,允許,然後取代每個拒絕允許(允許所有IP在一個國家內),然後最後拒絕所有的IP? – 2009-08-19 13:03:56

+0

廣告。從我看到的gbjbaanb的帖子,我非常接近真正的答案;)。 – 2009-08-19 13:04:56

回答

4

更改'拒絕'允許的所有事件,以及'允許'的所有事件都可以拒絕。然後將最後的'拒絕全部'條件移至列表的開頭。

例如。

<Limit GET HEAD POST> 
order allow,deny 
deny from 41.205.32.0/19 
deny from .... 
allow from all 
</LIMIT> 

成爲

<Limit GET HEAD POST> 
order deny,allow 
deny from all 
allow from 41.205.32.0/19 
allow from .... 
</LIMIT> 

有一些很好的tutorials about .htaccess

+0

你知道你是如何做到這一點的只是一個特定的頁面? – mheavers 2011-03-31 11:54:20

+0

是的。 Google說要在.htaccess文件中使用塊。 http://httpd.apache.org/docs/current/mod/core.html#files - 請注意,所有.htaccess指令都可以放在你的httpd.conf中(並且是首選) – gbjbaanb 2011-04-01 10:56:32

+0

@gbjbaanb此解決方案不起作用爲了我。這不再有效嗎? – 2016-12-04 17:01:13

0

有很多地理數據庫供應商提供有關該主題的問題詳細說明的解決方案。檢查http://www.maxmind.com/app/mod_geoip爲他們的數據庫附帶的apache模塊,這可能是您的問題的完美契合。