在wget中设置代理
我想用wget工具下载一些东西。 但我想用这个设置为wget:
HTTP Proxy: 127.0.0.1 Port: 8080
没有用户名和密码。
我怎样才能做到这一点? 我查了很多网站和很多build议,但没有任何工作给我…
通过~/.wgetrc
文件:
use_proxy=yes http_proxy=127.0.0.1:8080 https_proxy=127.0.0.1:8080
或通过在URL之后放置-e
选项:
wget ... -e use_proxy=yes -e http_proxy=127.0.0.1:8080 ...
键入命令行:
$ export http_proxy=http://proxy_host:proxy_port
对于经过authentication的代理,
$ export http_proxy=http://username:password@proxy_host:proxy_port
然后运行
$ wget fileurl
对于https,只需使用https_proxy而不是http_proxy即可。 你也可以把这些行放在你的〜/ .bashrc文件中,这样你就不需要每次都执行这个了。
以下可能的configuration位于/etc/wgetrc
只是取消注释和使用…
# You can set the default proxies for Wget to use for http, https, and ftp. # They will override the value in the environment. #https_proxy = http://proxy.yoyodyne.com:18023/ #http_proxy = http://proxy.yoyodyne.com:18023/ #ftp_proxy = http://proxy.yoyodyne.com:18023/ # If you do not want to use proxy at all, set this to off. #use_proxy = on
wget在命令行使用环境variables这样的东西可以工作:
export http_proxy=http://your_ip_proxy:port/ export https_proxy=$http_proxy export ftp_proxy=$http_proxy export dns_proxy=$http_proxy export rsync_proxy=$http_proxy export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
尝试了很多教程来configuration我的Ubuntu 16.04 LTS后面的身份validation代理,它的工作与这些步骤:
编辑/etc/wgetrc
:
$ sudo nano /etc/wgetrc
取消这些行的注释:
#https_proxy = http://proxy.yoyodyne.com:18023/ #http_proxy = http://proxy.yoyodyne.com:18023/ #ftp_proxy = http://proxy.yoyodyne.com:18023/ #use_proxy = on
将http://proxy.yoyodyne.com:18023/
更改为http://username:password@domain:port/
重要提示:如果仍然无效,请检查您的密码是否有特殊字符,例如
#
,@
,…如果是这种情况,请将其转义(例如,将passw%40rd
passw@rd
replace为passw%40rd
)。
在Ubuntu 12.x中,我在$ HOME / .wgetrc中添加了以下几行
http_proxy = http:// uname:passwd@proxy.blah.com:8080
use_proxy = on
在我的ubuntu中,$ HOME / .wgetrc中的以下几行代码完成了这个任务!
http_proxy = http:// uname:passwd@proxy.blah.com:8080
use_proxy = on
在Debian中,wget可以configuration为通过环境variables和wgetrc使用代理。 在这两种情况下,用于HTTP和HTTPS连接的variables名称都是
http_proxy=hostname_or_IP:portNumber https_proxy=hostname_or_IP:portNumber
请注意,文件/ etc / wgetrc优先于环境variables,因此,如果您的系统在此处configuration了代理,并尝试使用环境variables,那么它们似乎没有任何作用!
在Windows中 – 对于Fiddler来说 – 使用环境variables:
set http_proxy=http://127.0.0.1:8888 set https_proxy=http://127.0.0.1:8888