加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

curl php ssl连接超时

发布时间:2020-12-14 01:00:22 所属栏目:Linux 来源:网络整理
导读:我在互联网上找到了这个代码,我修改了它供我使用,我不知道我在这里做错了什么,我收到了这个错误 卷曲错误:SSL连接超时 登录部分成功,但搜索不适合我.请问有人帮我吗? ?php//create array of data to be posted$post_data['username'] = 'user';$post_data[
我在互联网上找到了这个代码,我修改了它供我使用,我不知道我在这里做错了什么,我收到了这个错误
卷曲错误:SSL连接超时
登录部分成功,但搜索不适合我.请问有人帮我吗?

<?php
//create array of data to be posted
$post_data['username'] = 'user';
$post_data['password'] = 'log';
$post_data['cmd'] = 'log';

//create array of data to be posted
foreach ( $post_data as $key => $value) {
    $post_items[] = $key . '=' . $value;
}
//create the final string to be posted using implode()
$post_string = implode ('&',$post_items);
//create cURL connection
$curl_connection =
  curl_init('https://sie.com');
//set options
///curl_setopt($curl_connection,CURLOPT_CONNECTTIMEOUT,3990);

curl_setopt($curl_connection,CURLOPT_USERAGENT,"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");

curl_setopt($curl_connection,CURLOPT_HTTPHEADER,array(
    'Connection: Keep-Alive','Keep-Alive: 300'
));

curl_setopt($curl_connection,CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl_connection,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($curl_connection,CURLOPT_FOLLOWLOCATION,1);
//set data to be posted
curl_setopt($curl_connection,CURLOPT_POSTFIELDS,$post_string);
//perform our request
$result = curl_exec($curl_connection);
//show information regarding the request

//print_r(curl_getinfo($curl_connection));
//echo curl_errno($curl_connection) . '-' .
  //              curl_error($curl_connection);
//close the connection
//curl_close($curl_connection);


echo $result."n";


$post_data1['cmd'] = 'Viewr';
$post_data1['search'] = 'test';



foreach ( $post_data1 as $key => $value1) {
    $post_items1[] = $key . '=' . $value1;
}
$post_string1 = implode ('&',$post_items1);
echo $post_string1."n";
curl_setopt($curl_connection,30);
curl_setopt($curl_connection,"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
curl_setopt($curl_connection,$post_string);
//perform our request
$result1 = curl_exec($curl_connection);
//show information regarding the request
//$result1 =1;
//close the connection
//curl_close($curl_connection);
if ($result1)
echo "ok nn";
else
echo "nokn";
if(curl_errno($curl_connection))
{
    echo 'Curl error: ' . curl_error($curl_connection)."n";
}
echo($post_string1);
echo $result1."n";


curl_close($curl_connection);


?>

解决方法

尝试添加此项(但不要在生产中设置此选项!):

curl_setopt($curl_connection,false);

如果它之后有效,那是因为CURL无法协商SSL证书.

请按照本教程获取有关如何获取CA证书的步骤:http://unitstep.net/blog/2009/05/05/using-curl-in-php-to-access-https-ssltls-protected-sites/

要查看的其他内容是,在curl_exec()之前,curl_copy_handle();然后设置其他参数.

另外,或者,您可以使用curl_init($url);重新启动cURL.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读