lnmp一键安装包ssl证书更新问题
lnmp 官方文档说明
Let'sEncrypt 免费通配符/泛域名SSL证书添加使用教程
LNMP 1.5已经添加了对通配符证书的支持,生成通配符证书和Let'sEncrypt平常SSL证书命令有些差异(通配符证书命令是 lnmp dnsssl 域名dns服务商简称,普通证书是lnmp ssl add),最好是使用域名DNS服务商的API,这样才能实现自动续期。
对于在阿里云购买域名情况需要创建一个RAM管理子用户用于获取DNS权限。阿里云RAM访问控制
子用户权限开启了所有访问DNS相关权限,目前能创建SSL证书,但是后期自动证书更新功能能否实现有待验证。
lnmp 自动更新SSL证书
如果根据官方教程lnmp dnsssl ali export Ali_Key="ID key" export Ali_Secret="your password" 安装最后提示:
Error, can not get domain token entry physics.thinkpositive.top
The supported validation types are: http-01 , but you specified: dns-01
Please check log file for more details: /usr/local/acme.sh/acme.sh.log
则需要更新acme.sh:
/usr/local/acme.sh/acme.sh --upgrade
Google Chrome 浏览器显示Not fully secure问题
在Let'sEncrypt 免费通配符/泛域名SSL证书添加使用教程最后已经有提到:
该页面上有http不安全的资源加载,如图片、js、css之类的,最简单的排查方法Chrome中按F12、点击Console选项卡再F5刷新页面,就会有Mixed Content: The page at 'https://lnmp.org/install.html' was loaded over HTTPS, but requested an insecure image 'http://lnmp.org/images/1.4/lnmp1.4-install-1.png'. This content should also be served over HTTPS. 之类的提示,就是说明了在install.html这个页面上有lnmp1.4-install-1.png这个文件的是使用http加载的。找到对应的地方改成https链接就可以了。
强制HTTPS连接
修改Nginx配置文件
vim 打开 /usr/local/nginx/conf/vhost/ 选则需要修改的域名配置例如:www.thinkpositive.top.conf。并在80端口配置中添加一下代码:
if ($server_port = 80) {
return 301 https://$server_name$request_uri;
}
if ($scheme = http) {
return 301 https://$server_name$request_uri;
}
[notice]
注意事项:
[/notice]
在配置文件中只添加http判断并重启nginx时出现报错:
然而再一次重复这个操作时并未出现相同错误。上述错误真实原因目前仍不清楚。

