2011-12-01 41 views
0

我的網站(媒體)上有一個我不希望公衆訪問的文件夾,即使他們知道完整的文件名。限制訪問LAMP服務器上的指定目錄內的所有文件

我相信這是用chmod控件完成的,但不確定。如何限制訪問權限,以便只有我的服務器能夠訪問目錄中的所有內容(css,js,主要是PDF文件)。

回答

1

在你的httpd.conf或包含.conf文件中加入:

<Directory /dir/to/be/protected> 
    AllowOverride None 
    <Limit GET POST OPTIONS> 
     Order deny,allow 
     Deny from all 
    </Limit> 
</Directory> 
+0

優秀 - 正是我期待的。如果你不介意,那麼我可以學習,限制部分是做什麼的? – JM4

+0

這是一個過濾器,你可以過濾掉你所做或不想發生的任何事情。還有LimitExcept指令,它更多用於確保在此上下文中僅發生X或Y.更多文檔:http://httpd.apache.org/docs/2.0/mod/core.html#limit – awm

1

只需添加這到您的.htaccess

Deny from all 
Allow from IP 

更多的信息在這裏 http://httpd.apache.org/docs/1.3/mod/mod_access.html

此外,如果你想否認所有的HTTP訪問(例如訪問用PHP腳本文件這樣),那麼只需添加拒絕而不允許。

UPD:在你的虛擬主機,你可以這樣做

<VirtualHost *:80> 
ServerName domain 
DocumentRoot /var/www/domain/ 
<Directory "/var/www/domain/deny_folder/"> 
Deny from all 
</Directory> 
</VirtualHost> 
+0

我已經這樣做了某些網站,但我想限制在HTACCESS中不允許的特定目錄。我相信我可以在我的機器上的vhost.conf文件中設置這個設置爲限制我的實際IP,但我很好奇是否有更好的方法。 – JM4

+0

我應該先對自己進行真正的測試,但最終還是尋找awm解釋的LIMIT函數。 – JM4