curl: (60) SSL certificate problem: unable to get local issuer certificate 错误

curl: (60) SSL certificate problem: unable to get local issuer certificate 错误

今天同事做微信分享时,碰到如下

SSL certificate problem: unable to get local issuer certificate。

的错误信息。

此问题的出现是由于没有配置信任的服务器HTTPS验证。默认,cURL被设为不信任任何CAs,就是说,它不信任任何服务器验证。

因此,这就是浏览器无法通过HTTPs访问你服务器的原因。

解决此报错有2种处理方法

  1.如果你的内容不敏感,一个快捷的方法是使用curl_exec()之前跳过ssl检查项。

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

  2.下载一个ca-bundle.crt ,放到对应的目录,在php.ini文件中配置下路径

  https://github.com/bagder/ca-bundle/blob/e9175fec5d0c4d42de24ed6d84a06d504d5e5a09/ca-bundle.crt

  在php.ini加入 ,重启web服务器

curl.cainfo=”真实路径/ca-bundle.crt”

注:项目使用的是laravel框架,在window电脑下,我首先查找的是如下链接:

http://stackoverflow.com/questions/24611640/curl-60-ssl-certificate-unable-to-get-local-issuer-certificate

解决办法如下:

证书在 https://curl.haxx.se/docs/caextract.html 链接里面。

关于“SSL证书问题:无法获取本地颁发者证书”错误。很明显,这适用于发送CURL请求的系统(并且没有服务器接收请求)

1)从https://curl.haxx.se/ca/cacert.pem下载最新的cacert.pem

2)将以下行添加到php.ini(如果这是共享托管,并且您无法访问php.ini,那么可以在public_html中添加到.user.ini)

curl.cainfo=/path/to/downloaded/cacert.pem

3)默认情况下,FastCGI进程将每隔300秒解析新文件(如果需要,可以通过添加几个文件来更改频率,如https://ss88.uk/blog/fast-cgi-and-user-ini -files-the-new-htaccess /)

但是,下载的证书不可用,然后只好用

https://github.com/bagder/ca-bundle/blob/e9175fec5d0c4d42de24ed6d84a06d504d5e5a09/ca-bundle.crt

链接提供的证书解决了问题。

将下载的证书放在php.ini的当前目录下的extras/ssl/下面。

然后在php.ini文件中加入

curl.cainfo=”真实路径/ca-bundle.crt”(curl扩展是必须开启的)

解决参考原文:

Thanks @Mladen Janjetovic,

Your suggestion worked for me in mac with ampps installed.

Copied: http://curl.haxx.se/ca/cacert.pem

To: /Applications/AMPPS/extra/etc/openssl/certs/cacert.pem

And updated php.ini with that path and restarted Apache:

    [curl]
    ; A default value for the CURLOPT_CAINFO option. This is required to be an
    ; absolute path.
    curl.cainfo="/Applications/AMPPS/extra/etc/openssl/certs/cacert.pem"
    openssl.cafile="/Applications/AMPPS/extra/etc/openssl/certs/cacert.pem"

And applied same setting in windows AMPPS installation and it worked perfectly in it too.

[curl]
; A default value for the CURLOPT_CAINFO option. This is required to be an
; absolute path.
curl.cainfo="C:/Ampps/php/extras/ssl/cacert.pem"
openssl.cafile="C:/Ampps/php/extras/ssl/cacert.pem"

Same for wamp.

    [curl]
    ; A default value for the CURLOPT_CAINFO option. This is required to be an
    ; absolute path.
    curl.cainfo="C:/wamp/bin/php/php5.6.16/extras/ssl/cacert.pem"

 

原文:https://blog.csdn.net/sanbingyutuoniao123/article/details/71124655

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/112795.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • MFC第三课 多字节处理

    MFC第三课 多字节处理

  • 网站程序下载_可以免费下载程序的网站

    网站程序下载_可以免费下载程序的网站1、博客网站:Wordpress、zblog2、门户网站:Dedecms、phpcms、帝国cms3、论坛网站:Discuz4、企业网站:Dedecms、phpcms、帝国cms5、商城网站:

  • 一个对话让你明白架构师是做什么的?[通俗易懂]

    一个对话让你明白架构师是做什么的?[通俗易懂]阅读本文大概需要6分钟。很多人都想知道架构师是做什么?我们看看下面的一段对话。菜鸟——刚入门的程序员老鸟——资深架构师老鸟:菜鸟,你的目标是什么?菜鸟:我要成为一个软件架构师。老鸟:对一个年轻的工程师来说,这是一个很好的目标。那你为什么要成为架构师呢?菜鸟:我要领导一个团队,还要做所有关于数据库、框架和Web服务器的重要决定。老鸟…

    2022年10月27日
  • pip怎么卸载安装包_pip怎么卸载

    pip怎么卸载安装包_pip怎么卸载PythonPipcommandprovidessearch,install,update,uninstallpackages.Wecanusepipcommandtouninstallpackageseasilyeventherearesomealternativeslikeeasy_install.PythonPip命令提供搜索,安装,更新,…

    2022年10月19日
  • Ant是什么?「建议收藏」

    Ant是什么?「建议收藏」Ant是Java的生成工具,是Apache的核心项目;Ant类似于Unix中的Make工具,都是用来编译、生成;Ant是跨平台的,而Make不能;Ant的主要目的就是把你想做的事情自动化,不用你手动一步一步做,因为里面内置了javac、java、创建目录、复制文件等功能,所以可以直接点击Ant文件,即可编译生成你的项目。……

  • pipeline流水线框架_流水线主动轮设计

    pipeline流水线框架_流水线主动轮设计流水线设计就是将组合逻辑系统地分割,并在各个部分(分级)之间插入寄存器,并暂存中间数据的方法。目的是将一个大操作分解成若干的小操作,每一步小操作的时间较小,所以能提高频率,各小操作能并行执行,所以能提高数据吞吐率(提高处理速度)。缺点:功耗增加,面积增加,硬件复杂度增加,特别对于复杂逻辑如cpu的流水线而言,流水越深,发生需要hold流水线或reset流水线的情况时,时间损失越大。…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号