Apache2:如何禁止自动目录列表仅允许特定IP访问?
解决Apache特定IP允许目录列表的配置问题
你的配置失效是因为只添加了允许特定IP的规则,但Apache默认允许所有客户端访问,没有设置默认拒绝规则,导致所有用户都能看到目录列表。以下分Apache版本给出正确配置:
Apache 2.2 版本
使用传统的allow/deny指令,需明确先拒绝所有,再放行目标IP:
<Directory "/var/www/myvirtualhost/"> Options +Indexes Order Deny,Allow Deny from all Allow from 1.2.3.4 </Directory>
Order Deny,Allow:指定规则执行顺序,先执行拒绝规则,再执行允许规则Deny from all:默认拒绝所有客户端的目录列表访问请求Allow from 1.2.3.4:仅放行指定IP的访问
Apache 2.4 版本
2.4版本改用Require指令替代旧的allow/deny语法,配置如下:
<Directory "/var/www/myvirtualhost/"> Options +Indexes Require all denied Require ip 1.2.3.4 </Directory>
Require all denied:默认拒绝所有客户端Require ip 1.2.3.4:仅允许指定IP访问目录列表
配置完成后,重启Apache服务使设置生效。
内容的提问来源于stack exchange,提问作者twisted
相关产品推荐
相关产品推荐

