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

与在Linux上工作的CURL(PHP)的SSL连接,在Windows上相同的代码失

发布时间:2020-12-13 22:54:45 所属栏目:Linux 来源:网络整理
导读:我编写了一个使用我们的银行WSDL服务的脚本,使用 Nusoap.请求使用证书签名.这个脚本在Ubuntu,Apache 2.2,PHP 5.4上运行良好. 当试图在Windows 7(64位,PHP 5.4)上实现相同的功能时,我得到了Curl抛出的这个错误: **SSL read: error:140940E5:SSL routines:SSL
我编写了一个使用我们的银行WSDL服务的脚本,使用 Nusoap.请求使用证书签名.这个脚本在Ubuntu,Apache 2.2,PHP 5.4上运行良好.

当试图在Windows 7(64位,PHP 5.4)上实现相同的功能时,我得到了Curl抛出的这个错误:

**SSL read: error:140940E5:SSL routines:SSL3_READ_BYTES:ssl handshake failure,errno 0**

我已禁用防火墙和防病毒软件.我可以提供Curl选项详细信息,或任何其他代码或信息.谢谢!

解:

curl_setopt($this-> ch,CURLOPT_SSLVERSION,3);

解决方法

要使用SSL连接,您必须在php.ini中启用php_openssl.dll

当你使用curl时,常见的问题是openssl模块默认使用错误的SSL版本.大多数情况下,您应将SSL版本设置为3.

curl_setopt($curl,3);

几天前我遇到了同样的问题.

(编辑:李大同)

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

    推荐文章
      热点阅读