打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
关闭Apache的目录浏览功能
                   今天在调整网站架构时,突然发现可以直接浏览到子目录下的结构和文件。我觉得这是一个比较危险的情况,特别是Apache配置中是打开该选项的,有必要关闭它。

一、默认情况
默认情况下,Apache的配置文件/etc/httpd/conf/httpd.conf中有如下参数:

引用
<Directory "/var/www/html">
Options Indexes FollowSymLinks
......
</Directory>


也就是说,在目录下没有默认首页面(如:index.html index.php等)时,可以让用户直接浏览web目录架构,这可能会导致一些重要的目录或配置文件被公开。

通常在Web应用上也会做一些安全考虑,以Bo-Blog为例,一些目录下会有类似的文件:

引用
# cat inc/index.php
<?php
die ('Access Denied');


这样,可以避免用户直接浏览该目录时,看到整个目录结构。但如果访问它下面的子目录就没什么作用了:

所以,这还是不太安全。

二、修改配置文件
安全起见,我建议还是把Indexes选项关闭比较好,方法有两种:
1、全局关闭
修改上面提到的配置文件/etc/httpd/conf/httpd.conf,把:

引用
Options Indexes FollowSymLinks


改为:

引用
Options -Indexes FollowSymLinks


重启httpd服务即可,这样可以把所有网站的Indexes选项都取消。

2、修改.htaccess文件
如需要针对特定的网站取消该功能,可以先打开.htaccess支持,修改/etc/httpd/conf/httpd.conf:

引用
<Directory "/var/www/html">
......
    AllowOverride None
......
</Directory>


修改为:

引用
<Directory "/var/www/html">
......
    AllowOverride All
......
</Directory>


然后,在各网站的主目录下写入一个.htaccess文件,内容有:

引用
# head .htaccess
Options -Indexes

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
......


保存后马上生效。

这时,访问同样的路径,就会报下面的错误提示:

※ 从服务层面去屏蔽类似的问题,会比从应用层面解决要更安全和可靠。很多应用程序的默认设置都是比较宽松的,所以,在对外公布网站的时候,务必做好类似的安全检查,防止漏洞和隐患。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Apache简明教程 | 大爱
apache开启.htaccess及.htaccess的使用方法
Apache 配置文件的含义(值得收藏)
CentOS 7 Apache服务的安装与配置
如何开启Apache Rewrite功能
使用apache和htaccess对目录访问设置密码保护配置教程
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服