wget -d --header="Host:www.sina.com" http://202.108.33.84
domain differ ip
防止Wget递归下载
假设Nginx默认配置文件所在目录:/usr/local/nginx/conf/vhost
wget的默认User Agent是GNU/Linux,wget,因此我们只需要阻止该UA的访问并返回403即可。
Nginx配置如下:
if ($http_user_agent ~* (Wget|ab) ) {
return 403;
}
if ($http_user_agent ~* LWP::Simple|BBBike|wget) {
return 403;
}
扩展:
Nginx中有一个独特的HTTP 444状态,如果配置return 444,那么对方就不会收到错误信息,看起来就像是网站服务器打开缓慢导致无法连接一样。
破解禁止wget或curl下载
某些网站设置了网站服务器或者iptables的参数禁止wget/curl的访问,让我们不能愉快地扒站了怎么办?其实大部分只是禁止了wget/curl的User Agent,我们只需要给他们设置一个正常的浏览器UA即可。
临时变更wget的UA
在wget前加上参数 -U
,代表设置User Aagent
wget www.google.com -U ‘Mozilla/5.0 (Windows NT 10.0; WOW64; rv:43.0) Gecko/20100101
永久变更Wget的UA
添加以下代码到/etc/wgetrc
header = User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0
变更curl的UA
使用以下参数:
curl www.google.com --user-agent "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0"
同时,curl也可以传递refer信息来跳过某些防盗链设置:
curl -e http://www.google.com http://www.linpx.com