【发布时间】:2014-12-11 00:13:19
【问题描述】:
Ubuntu 10.04.4 LTS
Apache 2.2.14
ISPConfig 3.0.4.2
我们的一个客户端有一个旧的网络服务器,该服务器不断崩溃,似乎是恶意机器人/蜘蛛,它们可能正在欺骗他们的用户代理。我已经尝试了几乎所有我能想到的 htaccess 配置来尝试阻止它们爬取站点,但无济于事。
此时,我正在尝试通过 .htaccess 阻止单个 IP,但似乎没有任何效果。
我在 vhost 配置文件中将 AllowOveride 设置为“全部”:
<Directory /var/www/<this_website>
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
我启用了以下模组:
ls -x /etc/apache2/mods-enabled/
actions.conf actions.load alias.conf alias.load auth_basic.load auth_digest.load
authn_file.load authz_default.load authz_groupfile.load authz_host.load authz_user.load autoindex.conf
autoindex.load cgi.load dav_fs.conf dav_fs.load dav.load deflate.conf
deflate.load dir.conf dir.load env.load expires.load fcgid.conf
fcgid.load include.load mime.conf mime.load negotiation.conf negotiation.load
php5.conf php5.load reqtimeout.conf reqtimeout.load rewrite.load ruby.load
setenvif.conf setenvif.load ssl.conf ssl.load status.conf status.load
suexec.load suphp.conf suphp.load
以及 webroot 中 .htaccess 文件的片段:
...
order allow,deny
Allow from all
Deny from 180.76.6.45
...
我已通过在阻止列表底部添加“全部拒绝”来验证正在读取 .htaccess 文件。使用浏览器访问主页后,我得到了预期的 Apache“禁止”页面。但是,在查看访问日志时,我仍然在编写 .htaccess 很久之后看到以下内容...
180.76.6.45 - - [15/Oct/2014:19:22:24 +0000] "GET /legacy HTTP/1.1" 403 0 "-" "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)"
列表中的所有其他 IP 也是如此。为什么我的“拒绝 IP”指令被忽略?
【问题讨论】: