禁止显示网站的目录结构列表,这是一个Apache的安全配置选项,目的是为了防止网站目录结构外泄,被坏人利用,给网站造成安全隐患。360网站安全检测就有这一项。
Apache的具体配置方式:在网站目录上下文的Options里面,去掉Indexes参数。
注意:在Indexes前面加-(减号)不起作用,至少对于Apache2.4不起作用。
Apache配置示例:
DocumentRoot "E:/xxxxxx/maixj.net/site"
Options FollowSymLinks Includes ExecCGI #删除这行的Indexes,加“-”行不能用;
Have fun...
要想360网站安全检测得满分,一定要做这个Apache配置。
2018-10-02:
这个配置的作用是,通过浏览器,我们不能直接访问网站的某个文件夹。
但是如果这个文件夹里面有index.html文件(或者index.php),还是可以访问此文件夹。访问的结果不是列出这个文件夹的所有内容,而是返回index文件。
至于是index.html或index.php,那个有效果,要看你的Apache的配置了。
如果是访问文件夹中的某个具体的文件,比如testkk.php,只要URL定位到了这个问题,还是可以访问的。
2019-04-12:
我查到的资料:
mod_dir,这个模块是默认启用的,作用就是让index.html或index.php生效。用于定义访问目录时的缺省文档。
mod_autoindex,这个模块也是默认启用的,但其配置时默认关闭的。
xinlin@iZ23:/usr/local/apache/conf$ cat httpd.conf | grep autoindex
LoadModule autoindex_module modules/mod_autoindex.so
#Include conf/extra/httpd-autoindex.conf
根据上文的信息,如果要隐藏网站所有目录的内部结构,就可以把这个模块的加载去掉了,节省内存。网上还有人说这是个过时的模块。