2013-10-08 58 views
1

我有一個網絡服務器,我希望每個人都可以訪問,除了一個主機。 我修改了配置(/etc/httpd/conf/httpd.conf),並增加了以下內容:httpd - 拒絕特定的主機

<Location /> 
    Order Allow,Deny 
    Deny from www.HOST.com 
    Allow from all 
</Location> 

很不幸,不能正常工作。我試圖切換到Order Deny,Allow,將Allow from all放在deny之前,但仍然不起作用。

當我瀏覽到www.HOST.com時,它仍然可以從我的網絡服務器獲取.js文件和圖像。 也許檢查應該由推薦人? (我不知道該怎麼做)。

任何形式的幫助,將不勝感激。

此致, 亞當。

+0

你是什麼意思「瀏覽到www.HOST.com」?這個功能是用來瀏覽「從」一個特定的客戶端(這就是爲什麼說「拒絕」)。注意在某些舊版本的Apache中,「拒絕」參數應該是IP地址,而不是主機名。 –

回答

0

這不是Deny所做的。如果您擁有Deny from www.host.com,那意味着某人擁有「www.host.com」所在實際IP上的瀏覽器,將無法訪問該網站。你所說的是某個人從某個特定的網站被引用。不幸的是,防止這種情況發生的唯一方法是檢查請求的「referer」字段,這個字段可以是僞造的,所以它不能防止這種情況發生。你可以通過像這樣的規則添加到你的htaccess文件來做到這一點:

RewriteEngine On 
RewriteCond %{HTTP_REFERER} ^https?://www.HOST.com [NC] 
RewriteRule^- [L,F]