跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Apache中设置屏蔽IP地址和URL网址来禁止采集
未分類
10 12 月 2018

Apache中设置屏蔽IP地址和URL网址来禁止采集

只要是建有数据量比较多的网站,几乎不可避免采集的情况,这方面我们已经有多年的对付经验,主要是通过分析Web访问日志,找到采集的规律,相应来设置屏蔽IP地址或者URL网址来解决。

国内的Linux服务器上我们都安装了Squid作为Apache的前端缓存,所以我们遇到采集的情况就分析Squid的日志,在squid.conf文件中进行设置屏蔽,然后重启Squid服务就可以。

近期租用的国外Linux服务器上默认是没有Squid的,我们也就只用了Apache作为Web服务器,修改了httpd.conf来让Apache的日志文件显示更详细的虚拟主机域名、User-Agent等信息,以便遇到采集的情况可以分析。

前一阵子遇到来自固定某个或者某段IP的采集,我们就修改httpd.conf文件,在影响的主机设置中添加这样的代码:

Order Deny,Allow
Deny from 125.115.2.85
Deny from 91.228.196.234

然后重启Apache服务就可以。

这两天遇到比较狡猾的采集,平均每10秒采集一次,IP地址分散到10多个,日志中的User-Agent也是各种都有,这样仅仅靠屏蔽IP还无法解决,但通过分析发现采集是顺着某种页面的很多分页顺序进行的,例如:http://www.example.com/path/file?page=12345 ,这个12345在不断增加中,因此只要屏蔽对http://www.example.com/path/file 这类URL的访问,就可以全部屏蔽这些采集。

设置可修改httpd.conf,也可以修改具体目录下的.htaccess文件,添加rewrite规则如下:

RewriteCond %{HTTP_HOST}  ^can\.bizdirlib\.com(.*)$
RewriteCond %{REQUEST_URI} ^\/business_directory\/S\_\%26\_J(.*)$
RewriteRule .* - [F,L]

这样就屏蔽了can.bizdirlib.com站点下/business_directory/S_%26_J 这一类URL。

來源:jamesqi.com

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具