如何在Curl中使用Socks5代理
Curl在许多HTTP客户机和下载工具中拥有最好的代理支持。这就是如何使用socks5代理并使用socks5代理解析URL中的主机名。对于某些用例,通过代理解析主机名是必要的。
假设您有一个socks5代理运行在localhost:8001
上。
- crul 版本 >= 7.21.7 时使用命令:
curl -x socks5h://localhost:8001 http://www.google.com/
- crul 版本 >= 7.18.0 时使用命令:
curl --socks5-hostname localhost:8001 http://www.google.com/
许多工具在内部使用libcurl,或者在安装程序脚本中使用curl命令。如果很难修改命令行本身,可以使用环境变量设置代理。
env ALL_PROXY=socks5h://localhost:8001 PROGRAM [OPTION]...
如果你想覆盖系统代理设置,你可能还需要设置两个额外的变量:
env http_proxy=socks5h://localhost:8001 HTTPS_PROXY=socks5h://localhost:8001 ALL_PROXY=socks5h://localhost:8001 PROGRAM [OPTION]...
注意:http_proxy
是小写的,其他两个是大写的。