成功为本站添加了Let’s Encrypt的https支持√ 附教程

之前一个二级域名ss.toodyao.com一直无法访问,以为是被捯饬坏了,后来试遍无数方法,nginx.conf都快背下来了,之后发现是域名被墙了x

因为本站可以上,而且还在同一个服务器下,所以完全没想到会是域名被墙。

被墙大概分这么几个级别:

不同情况不一样,程度依次加重
1 、仅仅是 ip 被墙→换 ip
2 、域名被 url 重置→上 https
3 、域名被国家出口 dns 污染→用国内 dns ,备案回国
4 、域名被省级 dns 污染→能到这程度不是一般人,收拾收拾投案自首吧

来源:V2EX

IP被墙经常遇到,这样看来ss.toodyao.com的情况应该是第二种,而且上https是早晚的事儿,之前嫌麻烦一直没用https,看到lnmp 1.4支持安装SSL证书后,决定上https。(添加https之后真的没被墙了)

以上是扯闲篇

下面是正文

0. 准备

  • 你的服务器
  • 相关知识

1. 安装/升级lnmp 1.4

为了方便用了lnmp自带的SSL安装功能

安装lnmp 1.4:

详细安装过程请参考:https://lnmp.org/install.html

如果你以前安装了lnmp 1.x版本,需升级到lnmp 1.4:

2. 添加SSL

使用 lnmp ssl add 来为你的站点添加SSL

输入相关信息如你的域名,根目录,URL重写的支持,日志等,之后选择2,使用Let’s Encrypt的SSL证书,接下来输入你的邮箱,等待相关安装完毕,重启nginx

3. 301重定向

需要将http访问重定向至https

找到你的nginx配置文件,如lnmp中为 /usr/local/nginx/conf/ ,各个虚拟主机的配置文件在 vhost 目录下,找到你域名的配置文件,或使用 nginx -t 校验命令查看配置文件的地址

在你的nginx配置文件中添加:

nginx -s reload 重载配置使其生效

4. 对WordPress的配置

如果是普通的网站,这是已经可以看到右上角绿色的小锁了,

对于WordPress站点来说,还要为图片、CSS、JS等元素添加SSL支持,才算是支持全站https

进入WordPress仪表盘->设置->常规,将WordPress地址和站点地址都加上 https://

保存后刷新主页,如果还没有小绿锁的话,可以打开网页源代码, Ctrl+F 查找 http ,仔细排查,比如导航栏上的自定义URL,未更新的站内图片,或者非https的外链图片等,并逐个修改。

5.  验证

有小绿锁啦~O(∩_∩)O~~