在 Mac 上通过 http_proxy 设置代理

ast*_*rog 6 proxy environment-variables macos

我在 MacOS 10.7 上使用 HTTP 代理(当在系统首选项中设置时,它适用于 Safari.app)。我现在正在尝试使用$http_proxy环境变量为命令行应用程序设置代理。但是,我看到以下错误(代理详细信息被大写变量替换

$ export http_proxy=PROXY:PORT
$ wget http://www.google.com
--2012-01-31 17:31:31--  http://www.google.com/
Resolving PROXY (PROXY)... PROXY_IP
Connecting to PROXY (PROXY)|PROXY_IP|:PORT... failed: Connection refused.
Run Code Online (Sandbox Code Playgroud)

任何想法我可能做错了什么?谢谢!

小智 6

星蛙

我希望这不是一个愚蠢的答案,但您对代理和端口有真正的价值吗?它通常应该看起来像

export http_proxy=http://myproxy.myorg.com:8080/ 
Run Code Online (Sandbox Code Playgroud)

或者

export http_proxy=http://10.20.1.1:8080/ 
Run Code Online (Sandbox Code Playgroud)

还可以尝试将变量设置为大写,例如。

export HTTP_PROXY=http://myproxy.myorg.com:8080/ 
Run Code Online (Sandbox Code Playgroud)

最后,代理上通常有某种身份验证\验证,例如可能需要配置它来检查源地址。你的地址配置了吗?

詹姆士


小智 0

连接被拒绝表示给定的 IP 地址和端口至少在理论上有效,但主机阻止连接,因为 a) 防火墙不允许您连接到实际的代理服务器软件或 b) 该特定主机中没有运行代理服务器在那个特定的港口。

调试的第一行是在终端中使用 telnet。

  1. 远程登录代理端口
  2. 远程登录 PROXY_IP 端口

如果两种情况均因“连接被拒绝”而失败,则问题出在另一端(代理),或者您的代理没有正确的名称/IP/端口。

如果其中一个失败而另一个正常,则肯定存在某种 dns 错误(同样,您可能无法自行修复)

附言。至少在 Linux 上,通常会使用完整的 url 导出 http 和 https 代理变量,包括协议:export http_proxy= http://foo.bar.biz:8080/