在看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;
}