Nginx中基于User-Agent的Rewrite实例
一般通过User-Agent来判断,从网上抄一抄,那些列出的都不错,我的配置里加上了java、curl和Wget,方便调试和其它内部项目的抓取。 因为现在很多手机网关没有发送User-Agent,所以大部分手机发送的User-Agent到了网关就被过滤掉了,相当于是空值。经过抽样调 查,User-Agent为空且为手机用户比例比较大。有部分User-Agent为空的是一些蜘蛛或垃圾程序的造访,这些垃圾流量并不那么重要。希望手 机网关将来有相应的标准,不要发送空的User-Agent,就是发送一个字母也好啊。如果应用有一个独立域名,也未必要做手机判断。譬如新浪有独立域名 且深入人心,那它做不做跳转无关紧要。nginx配置用穷举方式罗列各类手机User-Agent并把空User-Agent也转到手机应用里,非这些情况,则跳到帮助页面.....
标签: nginx rewrite user-agent agent user
.htaccess阻止坏爬虫
可以根据 HTTP_USER_AGENT 来判断它们。把自己的agent设置为常用浏览器标识,比如 “Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)” ,就没办法了。
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:rocdk890@gmail.com [OR]
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR]
RewriteCond %{HTTP_USER_AGENT} ^Custo [OR]
RewriteCond %{HTTP_USER_AGENT} ^DISCo [OR]
RewriteCond %{HTTP_USER_AGENT} ^Download\ Demon [OR]
RewriteCond %{HTTP_USER_AGENT} ^eCatch [OR]
RewriteCond %{HTTP_USER_AGENT} ^EirGrabber [OR]
RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [OR]
RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [OR]
RewriteCond %{HTTP_USER_AGENT} ^Express\ WebPictures .......