wordpress网站配置SSL https访问需要注意的几点问题

那些年在SSL上踩过的坑。

证书链的顺序问题

cat www_example_com.crt COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > ssl-bundle.crt

SSL与CDN配合的问题

在CDN控制面板里上传证书时,公钥一定是合成后的ssl-bundle.crt的内容,而不是www_example_com.crt。

以阿里云CDN为例,要设置域名回源host,并开启协议跟随回源。

几个错误提示的原因
[emerg]: SSL_CTX_use_certificate_chain_file("/etc/nginx/certs/server.crt")
failed (SSL: error:0906D066:PEM routines:PEM_read_bio:bad end line error:140DC009:SSL routines:SSL_CTX_use_certificate_chain_file:PEM lib)
configuration file /etc/nginx/conf/nginx.conf test failed

这个的意思就是server.crt读取到意外错误行,回忆一下刚才的操作,这个是Comodo提供的crt证书,然后我们使用cat将证书链合并到这个证书里的,那么问题可能就出在合并这个环节,使用vi或者nano命令打开并编辑server.crt,果然让我们找到了问题所在:

可以看到原先占用一行的标记证书的分隔符,现在连到一起了,我们需要用换行将他们分开,注意问题左右的短横线最好一样多:

好,做好后,保存这个crt文件,再次重启Nginx服务,输入申请证书时私钥的密码,SSL启用成功!

[emerg] SSL_CTX_use_PrivateKey_file("/etc/nginx/conf.d/ssl/ssl.key") failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch)
nginx: configuration file /etc/nginx/nginx.conf test failed

SL证书和SSL私钥不匹配

it has a mismatch between your key and certificate

解决方法:

重新生成SSL证书配置,或者检查下证书链的顺序是否正确。

wordpress启用SSL https访问应该启用的两个插件

ssl-insecure-content-fixer

修复mix-content警告,可以通过chrome浏览器查看网站在https模式下的mix-content警告

HTTP / HTTPS Remover

自动把http://和https://形式的链接转换为“//”


请我喝杯咖啡

微信:支付宝:

推荐阅读:

科学上网利器 Shadowsocks (SS)的使用方法
免费好用的VPN推荐-VPNCUP 同时支持ss(shadowsocks)

老牌vpn商家绿色加速器 注册送200MB免费流量

你可能还喜欢 更多作者作品

发表评论