我想用代理下载一些wget的东西:
HTTP Proxy: 127.0.0.1
Port: 8080
代理不需要用户名和密码。
我该怎么做呢?
我想用代理下载一些wget的东西:
HTTP Proxy: 127.0.0.1
Port: 8080
代理不需要用户名和密码。
我该怎么做呢?
当前回答
如果你只需要用代理执行一次wget,最简单的方法是用这样的一行程序来执行:
http_proxy=http://username:password@proxy_host:proxy_port wget http://fileurl
或使用https目标URL:
https_proxy=http://username:password@proxy_host:proxy_port wget https://fileurl
其他回答
在命令行输入:
$ 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文件,这样你就不需要每次都执行了。
通过/etc/wgetrc对系统的所有用户或仅对用户使用~/。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 ...
在Debian Linux中,wget可以通过环境变量和wgetrc配置为使用代理。在这两种情况下,用于HTTP和HTTPS连接的变量名是
http_proxy=hostname_or_IP:portNumber
https_proxy=hostname_or_IP:portNumber
请注意,文件/etc/wgetrc优先于环境变量,因此,如果您的系统在那里配置了代理,并且尝试使用环境变量,它们似乎没有任何影响!
在Windows中——比如Fiddler——使用环境变量:
set http_proxy=http://127.0.0.1:8888
set https_proxy=http://127.0.0.1:8888
export http_proxy=http://proxy_host:proxy_port/
export https_proxy=https://proxy_host:proxy_port/
or
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。