从WordPress粘贴上传图片插件引发对certificates的思考

用WordPress后台上传图片需要先把图片保存到本地,然后在上传,好费劲(jin),突然想去开发一个粘贴上传功能的插件,转念一想或许早就有了,Google了一下果然有。

目前有两款插件OnePress Image Elevator和The Paste。但是费了些周折分别安装好了,都不起作用。所以这里并不打算介绍这两款插件,主要记录遇到的一个较有意思的问题,服务器需要安装certificates,以及为什么

一、问题描述
WordPress后台安装插件,提示【安装失败:下载失败。 cURL error 77】(注:之前安装插件没有遇到过)

二、问题解决方案
1、问题分析
查了下PHP curl https时error 77是因为证书出了问题,Problem with reading the SSL CA cert (path? access rights?))

2、查看博客的证书确实存在

ls /var/www/html/niliu/wp-includes/certificates/
ca-bundle.crt

3、服务器安装证书

sudo yum install ca-certificates

4、重启fpm

/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php-fpm.conf

5、再次安装插件OK

三、为什么需要certificates
1、curl等工具访问https地址时需要证书

2、Centos证书存放路径

yum install ca-certificates

/etc/pki/tls/certs/ca-bundle.crt

3、PHP curl可以通过CURLOPT_CAINFO来设置CA路径

四、思考
1、为什么wordpress中也有CA文件,什么时候使用源码中的,什么时候使用系统的?

参考:
https://www.wpbeginner.com/beginners-guide/how-to-get-a-free-ssl-certificate-for-your-wordpress-website/

发表评论

电子邮件地址不会被公开。 必填项已用*标注