怎样通过.htaccess设置网站不列出目录中的所有文件(linux主机)?
为了网站安全,没有index页面,怎么设置才能避免直接输入网站域名+目录后列出所有文件,
比如输入: www.xuexibbs.com/qiaohu
如果没有index页面,就直接列出了该文件夹目录中的所有文件,怎么避免呢,比如跳转到首页等。
解决方法:
linux主机,在根目录建立htaccess文件,添加代码:
Options -Indexes
在根目录的 .htaccess 文件中输入(但此方法对所有的虚拟目录都起作用)
<Files *>
Options -Indexes
</Files>
来自 http://cha.xuexibbs.com/1653.html
通过.htaccess文件Apache禁止列目录
附:1. Apache禁止列目录:
方法一,修改 httpd.conf配置文件,查找 Options Indexes FollowSymLinks,修改为 Options -Indexes;
方法二,在www 目录下的修改.htaccess 配置文件,加入 Options -Indexes。 (推荐)
2. Tomcat 禁止列目录:
在Tomcat的conf/web.xml文件里把listings值改为false。
PS:修改完httpd.conf后,一定记得重启web服务,才能生效噢!
不管是LINUX服务器,还是windows服务器,在配置WEB环境时,用到APAHCE,都会把网站目录文件列出来。这对安全方面很不好,可通过以下三种方法来修改。
第一中方法,最简单的一种。
可以在根目录的 .htaccess 文件中输入
<Files *>
Options -Indexes
</Files>
就可以阻止Apache 将目录结构列表出来
缺省情况下如果你在浏览器输入地址http://localhost:8080/,如果你的文件根目录里有 index.html,浏览器就会显示 index.html的内容,如果没有 index.html,浏览器就会显示文件根目录的目录列表,目录列表包括文件根目录下的文件和子目录。
如何禁止apache显示目录列表呢?
第二种方法
要禁止 Apache 显示目录结构列表,只需将 Option 中的 Indexes 去掉即可
比如我们看看一个目录的目录配置:
<Directory "D:/Apa/blabla">
Options Indexes FollowSymLinks #---------->Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
你只需要将上面代码中的 Indexes 去掉,就可以禁止 Apache 显示该目录结构。用户就不会看到该目录下的文件和子目录列表了。
Indexes 的作用就是当该目录下没有 index.html 文件时,就显示目录结构,去掉 Indexes,Apache 就不会显示该目录的列表了。
第三种方法
找到
<Directory "D:/Apa/blabla">
Options Indexes FollowSymLinks #---------->Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
在Options Indexes FollowSymLinks在Indexes前面加上 – 符号
【备注:在Indexes前,加 + 代表允许目录浏览;加 – 代表禁止目录浏览。】
如果是在虚拟主机中,只要增加如下信息就行:
<Directory “D:test”>
Options -Indexes FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
这样的话就禁止在test工程下进行目录浏览
备注: 切记莫把“Allow from all”改成 “Deny from all”,否则,整个网站都不能被打开。