我的所有外部连接都需要通过代理,因此对于我的用户,我添加了此行以允许我wget
或yum
自由地
~/.bashrc
export http_proxy=http://10.50.24.125:8080/
上面的部分工作得很好,但是对于我拥有的 PHP 脚本,我试图用php_curl
它来获取文件,因此我也在那里定义了相同的代理:
$curlHandle=curl_init();
curl_setopt($curlHandle, CURLOPT_URL, 'http://www.google.com');
curl_setopt($curlHandle, CURLOPT_HTTPPROXYTUNNEL, true);
curl_setopt($curlHandle, CURLOPT_PROXYPORT, 8080);
curl_setopt($curlHandle, CURLOPT_PROXY, '10.50.24.125');
$out=curl_exec($curlHandle);
echo $out;
curl_close($curlHandle);
但是,我没有看到任何结果,并且由于某些奇怪的原因,当我netstat -n
运行脚本时,我可以看到脚本正在尝试建立的连接,这是奇怪的部分:
tcp 0 0 10.50.25.83:80 10.20.5.15:51194 TIME_WAIT
因此,它不是连接到 10.50.24.125:8080,而是连接到随机端口上的 10.20.5.15,并且本地的源端口是 80?
有任何想法吗?
注意:运行 CentOS 5.6