如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接信息。

程序员最经常使用的curl,在php下面也是经常用的到。但是,苏南大叔友情提示您:用curl获取https的网页内容的时候,也是需要用到证书的。而这么多年,我们从来都没有察觉过任何更新证书的动作,证明这可能是有自动renew操作的。而手头的centos,却貌似有使用curl获取https的问题。

症状描述:

利用curl获取http的内容,成功。但是获取https的内容,失败。

解决方案:

首先,保证php.ini里面的openssl扩展肯定要打开,然后我们要检测一下curl组件的证书。
查看一下证书的默认位置,然后下载一下官方的最新证书。把拿到的最新证书,放到默认位置上。
重启之后,就应该修复成功了。

检测curl的证书位置的代码:

php -r "print_r(openssl_get_cert_locations());"

default_cert_file是默认位置。

php无法获得https网页内容的解决方案 - curl_https

php无法获得https网页内容的解决方案(图3-1)

证书的下载网址是: https://curl.haxx.se/docs/caextract.html

php无法获得https网页内容的解决方案 - curl_https_02

php无法获得https网页内容的解决方案(图3-2)

不过ll一下这个证书,可以发现是个link。所以,你真正的放置证书的位置其实是有变化的。你懂的。

php无法获得https网页内容的解决方案 - curl_cert

php无法获得https网页内容的解决方案(图3-3)

结论

更多有关https的相关话题,请点击查看:https://newsn.net/tag/https/ .

PS一下:这个curl的官网的域名,真心耐人寻味啊......

  【php】秘籍文章入口,仅传授于有缘之人  php

欢迎转载传播本篇原创文章,转载请保留链接及作者信息。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

打赏领取小礼物

打赏任意金额,发送截图到邮箱 shang@newsn.net ,可以领取精选回馈如下(任选其一):
  • 《前端视频教程大礼包》一套
  • 《wordpress精选皮肤》一套
  • 《dedecms织梦精选模板》一套
感谢您的打赏,让我更有动力,将更多精彩教程文章,呈现给大家!谢谢!

岁月静好

关注互联网发展,关注苏南大叔的《程序如此灵动~》博客
本文章来自:程序如此灵动~
博客地址为:https://newsn.net/
原文地址为:https://newsn.net/say/php-curl-https-error.html
上一篇好文:ssl证书的初级解读
下一篇好文:如何利用mysql的慢查询功能,对未知系统进行分析

如果您转载了本文章,出于某种原因,并没有注明作者或者出处。
在这里,苏南大叔也表示理解和支持。因为苏南大叔深深地明白:
您会在合适的时机,合适的地方,给本博客一个外链。对吧?
您若开心,便是安好!岁月静好,但愿世界和平,没有纷争~