设为首页收藏本站

就爱编程论坛

 找回密码
 注册

人人连接登陆

无需注册,直接登录

用新浪微博连接

一步搞定

QQ登录

只需一步,快速开始

查看: 787|回复: 0
打印 上一主题 下一主题

Apache禁止访问网站目录(列出目录文件列表) [复制链接]

Rank: 3Rank: 3

升级 
 
97%
  • TA的每日心情

    2012-8-22 08:34:27
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    跳转到指定楼层
    楼主
    发表于 2011-3-29 17:26:14 |只看该作者 |倒序浏览
    在apache安装目录下找到httpd.conf文件,用记事本打开,通过查找功能找到
    <Directory />
    Options Indexes FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    </Directory>
    这一段,将Options Indexes FollowSymLinks修改为Options None
    在httpd.conf中有两个这样的段落都要这样子修改,完成后保存,重启apache即可。
    =====================================================================================================

    =====================================================================================================
    其他应用参考
    在PHP网站开发中,基于WEB服务器和PHP网站程序代码的安全考虑,我们需要对相关的目录或者文件访问权限进行控制,以防止意外情况的发生,那么我们如何来实现这种功能呢?我们可以通过Apache来实现禁止目录访问(禁止游览列出的目录或文件列表)、禁止或允许IP与域名访问目录的功能。
    环境说明
      我使用的是DedeCMS DedeAmpz的PHP运行环境,PHP版本5.2.4,Apache版本2.2.4
    在Apache中配置禁止目录访问,即禁止游览列出的目录/文件列表的方法
      访问网站目录时Apache默认配置为可列出目录/文件列表,即当你访问http://localhost时会列出相关的目录和文件列表,我们可以通过修改Apache配置文件httpd.conf来实现禁止列出目录/文件列表,方法如下:
    1、打开apache配置文件httpd.conf
    2、找到
    <Directory />
    Options Indexes
    AllowOverride None
    Order allow,deny
    Allow from all
    </Directory>
    只需要修改Options Indexes为Options None即可,注:根据PHP运行环境安装包的不同,Options Indexes也有可能是Options Indexes FollowSymLinks,一并改为Options None即可。
    3、保存httpd.conf,并重启Apache即可,此时再访问http://localhost时, 报apache http 403 禁止访问错误信息
      Forbidden
      You don’t have permission to access / on this server.
    Apache单个或多个目录禁止访问方法
      这种方法通常用来禁止访问者访问后台管理目录或者程序目录,方法如下
    1、打开apache配置文件httpd.conf
    2、创建Directory块,比如禁止访问某个类库目录,可以这样实现

    <Directory /var/www/www.leapsoul.cn/inc>
        Order Deny,Allow
        Deny from all
    </Directory>
    上述代码实现了禁止所有用户访问www.leapsoul.cn下inc目录的功能。如要实现禁止访问所有目录中inc目录的功能,只要将
    1
    <Directory /var/www/www.leapsoul.cn/inc>
    更改为
    1
    <Directory /var/www/www.leapsoul.cn/*/inc>
    即可。
    3、重启Apache服务器。
    其他说明
    1、只允许或禁止某个域名进行目录访问

    <Directory /var/www/www.leapsoul.cn/inc>
        Order Deny,Allow
        Deny from abc.com
        Allow from apache.org
    </Directory>
    上述代码实现禁止abc.com域中主机访问inc目录,允许apache.org域中主机访问inc目录的功能。
    2、只允许或禁止某个IP进行目录访问

    <Directory /var/www/www.leapsoul.cn/inc>
        Order Deny,Allow
        Deny from 10.1.1.2
        Allow from 192.168.1.0/255.255.255.0
    </Directory>
    上述代码实现禁止IP10.1.1.2访问www.leapsoul.cn/inc目录,允许IP192.168.1子网中的主机访问www.leapsoul.cn/inc目录的功能。
    注意:Allow from 192.168.1.0/255.255.255.0等同于Allow from 192.168.1或Allow from 192.168.1.0/24
      至此,通过配置Apache服务器我们可以实现禁止目录访问(列出目录或文件列表),也可以实现禁止访问单个或者多个目录,更可以对访问者进行控制,比如允许或禁止某个IP或者域名对目录进行访问,这些功能对提高和优化WEB服务器的安全性能是必不可少的方法。
    分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    分享分享0 收藏收藏0 支持支持0 反对反对0 分享到人人 转发到微博

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册 人人连接登陆

    晴云孤魂's Blog|就爱编程搜帖|手机版|Archiver|就爱编程论坛     

    GMT+8, 2025-7-2 14:20 , Processed in 0.118555 second(s), 25 queries .

    Powered by Discuz! X2

    © 2001-2011 Comsenz Inc.

    回顶部