Ubuntu 12.10 cURL 与代理

Ubuntu 12.10 cURL 与代理

我正在使用代理,除了 cURL 之外没有任何问题。

任何时候我尝试做:

curl -L http://link.to.something

我收到:

curl: (5) Couldn't resolve proxy 'http'

尽管如此:

curl --proxy http://myproxy.com:8080 -L http://link.to.something

效果会很好。

--proxy每次都不写,有什么解决办法吗?

答案1

来自 man curl:

-x, --proxy <[protocol://][user@password]proxyhost[:port]>

 Use the specified HTTP proxy. 
 If the port number is not specified, it is assumed at port 1080.

对于一般用途,声明 http/https 的环境变量

export http_proxy=http://your.proxy.server:port/
export https_proxy=$http_proxy
  1. 编辑 /etc/bash.bashrc 在文件末尾添加:
    export http_proxy=http://username:[email protected]:port/
    export https_proxy=$http_proxy
    export ftp_proxy=http://username:[email protected]:port/
  • 或代理没有用户名和密码的情况-:
    export http_proxy=http://proxyserver.com:port/
    export https_proxy=$http_proxy
    export ftp_proxy=http://proxyserver.com:port/

答案2

实际情况是,您设置了一个 http_proxy 环境变量。默认情况下,curl 会首先尝试使用该变量。您的 http_proxy 显然也无效。要查看那里的内容,请键入:

echo $http_proxy

您需要检查您设置 http_proxy 的位置并修复它,以使其指向正确的位置。

另一个答案比我的更完整:)

相关内容