欢迎大家访问博主的博客新家:IT博客达人网 (http://www.blogdaren.com)[耶]

【原创】PHP Curl Problem with the SSL CA cert (path? access rights?) 解决

manon 2017-9-28 16:58 PHP 抢沙发 258人打酱油 打开侧边栏| 关闭侧边栏

问题背景:

早上起床收到短信提醒,WEB服务器集群发现漏洞,于是更新服务, 其中一条是: yum update openssl 

问题现象:

<1>  命令行直接使用系统的curl命令一切正常

<2>  LAMP环境中调用curl则报错: Curl Problem with the SSL CA cert (path? access rights?)

问题原因:

更新openssl后, 证书也跟着更新了, 但是apache容器【旧进程】无法正确读取到新的证书以及权限

解决方案:

<1> 请移步:  https://stackoverflow.com/questions/7179216/php-problem-with-the-ssl-ca-cert-path-access-rights

<2> yum reinstall openssl ca-certificates -y && service httpd restart 

注意事项:

<1> Worth mentioning for me at least that a simple graceful restart of Apache wasn't enough. I had to restart the service (i.e. service httpd restart)

老外的话非常中肯,翻译过来就是:

值得一提的是,简单的优雅重启apache是远远不够的【也就是 service httpd reload 是不够的】,必须硬重启apache【service httpd restart

<2> 的确, reload 重启是优雅的,友好的,因为它能保证数据安全处理以后再退出,慢重启机制; restart则是粗暴的, 进程立即退出,不管你此刻在干啥,类似于 kill -9 pid 的效果.   说到这,折腾半天我就是栽到这个坑里了, 国内千篇一律的抄写啊,汗~, 还是老外一针见血的给出了答案。尽管到目前我还是没弄明白为何 restart 和 reload 在这里对openssl服务造成的印象, 至少问题先解决了先。

<3> 在生产环境更新服务,一定反复确认,先在备用机器搞稳定再行生产环境

正文部分到此结束

版权声明:除非注明,本文由( manon )原创,转载请保留文章出处

本文链接:【原创】PHP Curl Problem with the SSL CA cert (path? access rights?) 解决

继续浏览:木有标签

八大免费SSL证书:给你的网站免费添加HTTPS加密
从腾讯的“灰度机制”到产品的“灰度上线”,你了解多少?

发表评论

看看右边的头像对不对?→_→