在看ThinkPHP文件時,看到下面這段文字:為了避免某些伺服器開啟了目錄瀏覽權限後可以直接在瀏覽器輸入URL位址查看目錄,系統預設開啟了目錄安全文件機制,會在自動生成目錄的時候生成空白的index.html文件,當然安全文件的名稱可以設置,例如你想給安全文件定義為default.html可以在入口文件中添加。
我是比較討厭多餘的index.html,所以想直接關掉目錄瀏覽權限,那麼問題來了,在nginx怎麼關閉和開啟這個權限呢?
PHP中文网2017-05-16 17:23:50
以下是我百度找到的答案:
nginx讓目錄中的檔案以列表的形式展現只需要一條指令
autoindex on;
autoindex可以放在location中,只對目前location的目錄起作用。你也可以將它放在server指令區塊則對整個網站都運作。或放到http指令區塊,則對所有網站都生效。
下面是一個簡單的例子:
server {
listen 80;
server_name domain.com www.domain.com;
access_log /var/...........................;
root /path/to/root;
location / {
index index.php index.html index.htm;
}
location /somedir {
autoindex on;
}
}
跟Apache的Deny from all類似,nginx有deny all指令來實作。
禁止對叫dirdeny目錄的存取並返回403 Forbidden,可以使用下面的配置:
location /dirdeny {
deny all;
return 403;
}