我想使用代理下载wget
的内容:
HTTP Proxy: 127.0.0.1
Port: 8080
代理不需要用户名和密码。
我该怎么做?我查了很多网站和许多建议,但没有任何对我有用......
答案 0 :(得分:360)
对于系统的所有用户/etc/wgetrc
或只有~/.wgetrc
文件的用户:
use_proxy=yes
http_proxy=127.0.0.1:8080
https_proxy=127.0.0.1:8080
或通过-e
选项放置在网址后面:
wget ... -e use_proxy=yes -e http_proxy=127.0.0.1:8080 ...
答案 1 :(得分:75)
输入命令行:
$ export http_proxy=http://proxy_host:proxy_port
用于经过身份验证的代理,
$ export http_proxy=http://username:password@proxy_host:proxy_port
然后运行
$ wget fileurl
对于https,只需使用https_proxy而不是http_proxy。您也可以将这些行放在〜/ .bashrc文件中,这样您就不必每次都执行此操作。
答案 2 :(得分:33)
以下可能的配置位于/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
答案 3 :(得分:17)
wget在命令行中使用类似这样的环境变量可以工作:
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"
答案 4 :(得分:16)
在尝试了许多教程以在经过身份验证的代理后面配置我的Ubuntu 16.04 LTS之后,它使用了以下步骤:
修改p.add(colFamily, qualifier, Bytes.toBytes(Long.toString(this.newoffset)));
:
/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@rd
)。
答案 5 :(得分:6)
在Ubuntu 12.x中,我在$ HOME / .wgetrc
中添加了以下行http_proxy = http://uname:passwd@proxy.blah.com:8080
use_proxy = on
答案 6 :(得分:4)
在我的ubuntu中,$ HOME / .wgetrc中的以下行已经成功了!
http_proxy = http://uname:passwd@proxy.blah.com:8080
use_proxy = on
答案 7 :(得分:4)
在Debian Linux中,wget可以配置为通过环境变量和wgetrc使用代理。在这两种情况下,用于HTTP和HTTPS连接的变量名称都是
http_proxy=hostname_or_IP:portNumber
https_proxy=hostname_or_IP:portNumber
请注意,文件/ etc / wgetrc优先于环境变量,因此如果您的系统在那里配置了代理并尝试使用环境变量,它们似乎没有任何效果!
答案 8 :(得分:2)
在Windows中 - 对于Fiddler说 - 使用环境变量:
set http_proxy=http://127.0.0.1:8888
set https_proxy=http://127.0.0.1:8888
答案 9 :(得分:1)
export http_proxy=http://proxy_host:proxy_port/
export https_proxy=https://proxy_host:proxy_port/
或
export http_proxy=http://username:password@proxy_host:proxy_port/
export https_proxy=https://username:password@proxy_host:proxy_port/
正如其他所有人在这里说明的那样,这些环境变量有助于传递代理。
注意:但是请不要这样,如果密码包含任何特殊字符,则需要将其配置为%<hex_value_of_special_char>
。
示例:如果密码为pass#123
,则需要在上述导出命令中用作密码pass%23123
。
答案 10 :(得分:0)
If you need to execute wget just once with the proxy, the easiest way is to do it with a one-liner like this:
http_proxy=http://username:password@proxy_host:proxy_port wget http://fileurl
or with an https target URL:
https_proxy=http://username:password@proxy_host:proxy_port wget https://fileurl
答案 11 :(得分:0)
在文件〜/ .wgetrc 或 / etc / wgetrc 中添加以下行(如果文件不存在,则创建该文件):
http_proxy = http://[Proxy_Server]:[port]
https_proxy = http://[Proxy_Server]:[port]
ftp_proxy = http://[Proxy_Server]:[port]
有关更多信息,请https://www.thegeekdiary.com/how-to-use-wget-to-download-file-via-proxy/
答案 12 :(得分:0)
使用 tsocks 通过 socks5 代理开始wget:
fed6de080aef54c4f1c1df732424df37cd3e5a3e
配置tsocks
sudo apt install tsocks
# vi /etc/tsocks.conf
server = 127.0.0.1
server_type = 5
server_port = 1080