zoukankan      html  css  js  c++  java
  • OpenSSL Error messages: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed

    完整的错误记录是:

    file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages:

    error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.

    使用错误的地方,在运行短信接口商提供的一个发短信的接口时遇到的:

    $gateway = "https://xxx.xxx.com/sdk2/BatchSend2.aspx?CorpID={$uid}&Pwd={$passwd}&Mobile={$num}&Content={$msg}&Cell=&SendTime=";

    $result = file_get_contents($gateway); //就这步的时候出错了

    百度了好久,最后在一篇文章那里看到了解决办法,谢谢原作者。(https://blog.csdn.net/enlangs/article/details/78988673)

    解决办法如下:

    环境

    OS:Windows 2008R2 
    PHP Version:5.6.31

    问题

    file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages:

    error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.

    解决方法

    1. 从这儿下载 http://curl.haxx.se/ca/cacert.pem ,放到C盘certs目录下(没有就创建),存储为 cacert.crt
    2. 打开 php.ini 找到里面的 curl.cainfo 和 openssl.cafile(2个 section 挨着的,前面的分号去掉)
    3. 修改 curl.cainfo=”c:certscacert.crt”
    4. 修改 openssl.cafile=”c:certscacert.crt”
    5. 重启 IIS 服务(别忘记了,很重要!)

    就这样就完美解决了!

  • 相关阅读:
    常用正则表达式大全
    ASP.netMVC验证码
    装饰器
    闭包函数
    猜年龄
    函数基础
    文件的高级应用
    字符编码
    文件的三种打开模式
    深浅拷贝+异常处理
  • 原文地址:https://www.cnblogs.com/eaglepie/p/8967952.html
Copyright © 2011-2022 走看看