【发布时间】:2012-02-19 12:58:31
【问题描述】:
我正在使用 cURL 连接到 SSL 服务器以接收和发送 XML 文件,但我不断收到
"connect() 超时!"
当我尝试连接到服务器时。
我是 cURL 的新手,所以我不知道是服务器配置、某些证书或其他什么问题。
我尝试运行的代码(由 SSL 服务器的所有者提供给我):
function post($url, $post)
{
$ch = curl_init();
if($ch)
{
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT,60);
curl_setopt($ch, CURLOPT_VERBOSE,0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
$result = curl_exec($ch);
echo '<pre>', curl_error($ch);
curl_close($ch);
if(!empty($result))
return $result;
}
}
cURL 版本信息:
[version_number] => 463362
[age] => 3
[features] => 1597
[ssl_version_number] => 0
[version] => 7.18.2
[host] => i486-pc-linux-gnu
[ssl_version] => OpenSSL/0.9.8g
[libz_version] => 1.2.3.3
[protocols] => Array
(
[0] => tftp
[1] => ftp
[2] => telnet
[3] => dict
[4] => ldap
[5] => ldaps
[6] => http
[7] => file
[8] => https
[9] => ftps
[10] => scp
[11] => sftp
)
【问题讨论】:
-
可以通过其他方式连接吗?尝试使用带有选项
-v的命令行中的 curl,看看效果如何。 -
不,这似乎也可以工作。我得到“连接超时”。
-
您是否尝试过设置
CURL_CONNECTTIMEOUT选项? -
是的,我得到了相同的结果。如果我在浏览器中转到我尝试使用 cURL 连接的 URL,它将在几毫秒内加载..我认为这可能是相关的..
-
可能是网络/防火墙问题。与 curl 或 php 无关