我有这个代理地址:125.119.175.48:8909
如何使用cURL(如cURL http://www.example.com)执行HTTP请求,但指定我的网络的代理地址?
我有这个代理地址:125.119.175.48:8909
如何使用cURL(如cURL http://www.example.com)执行HTTP请求,但指定我的网络的代理地址?
当前回答
与代理认证我使用:
curl -x <protocol>://<user>:<password>@<host>:<port> --proxy-anyauth <url>
因为,我不知道为什么curl不使用/catch http[s]_proxy环境变量。
其他回答
上面的解决方案可能不适用于我自己尝试过的一些curl版本(curl 7.22.0)。但对我有用的是:
curl -x http://proxy_server:proxy_port --proxy-user username:password -L http://url
希望它能更好地解决问题!
一般方法:
export http_proxy=http://your.proxy.server:port/
然后,您可以通过代理从(许多)应用程序连接。
而且,正如下面的评论,对于https:
export https_proxy=https://your.proxy.server:port/
根据您的工作场所,您可能还需要为curl指定-k或——insecure选项,以解决CA证书的潜在问题。
curl -x <myCompanyProxy>:<port> -k -O -L <link to file to download>
对于http代理隧道(TLS协议需要),您需要指定-p(即——proxytunnel)而不是-x。
关于代理的Curl帖子
代理隧道使用新的“CONNECT”关键字而不是修改过的“GET”关键字
这是节点http-proxy-中间件库所需要的。
只有当我使用wget时,我才得到一个线索。
curl -x socks5://username:password@ip:port example.com