我尝试使用php curl 7.35.0使用以下代码访问以下页面:
$this->ch = curl_init();
curl_setopt($this->ch, CURLOPT_CONNECTTIMEOUT, 3000);
curl_setopt($this->ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36");
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($this->ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($this->ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
curl_setopt($this->ch, CURLOPT_TIMEOUT, 3600);
curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($this->ch, CURLOPT_URL, 'https://asp.reflexion.net/login');
curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1);
$content = curl_exec($this->ch);
$httpCode = curl_getinfo($this->ch, CURLINFO_HTTP_CODE);
if ($errno = curl_errno($this->ch))
{
$error_message = curl_strerror($errno);
echo "cURL error ({$errno}):\n {$error_message}";
}
echo "<br>";
echo "http code: " . $httpCode . "<br>";
echo "content: " . $content;
返回以下内容:
cURL错误(35):SSL连接错误
http代码:0 含量:
之前有没有人遇到过这个问题?
答案 0 :(得分:2)
添加
curl_setopt($this->ch, CURLOPT_SSLVERSION , 3);
解决我的问题。
答案 1 :(得分:2)
通常,这是一个防火墙问题。 网络管理员禁止SSL连接。
答案 2 :(得分:1)
这对我有用:
的 yum update nss
强>
答案 3 :(得分:0)
这也解决了我的问题。
我们的环境
PHP 5.3.3 libcurl 7.19.7-46 google-api-php-client 1.1.5
在Google API客户端卷曲代码的深处,httpd将在curl_exec()内部死亡。将CURLOPT_SSLVERSION从1更改为3之后,一切都很好:)