为高权重域名部署HTTPS, 需要把三个核心步骤都做完。这三个步骤分别是申请并安装SSL证书、配置服务器强制跳转、设置HTTP到HTTPS的301重定向。下面以域名注册于gname.xin为例, 来把完整操作流程说明白。

申请SSL证书

对于具有高权重的域名, 我们建议去使用那种叫做DV的, 也就是域名验证类型的证书, 这样做的话, 它的验证速度会非常快, 同时也不会对搜索引擎的索引带来任何方面的负面影响。

用户登录了gname.xin控制台, 然后进入了SSL证书的栏目, 接着可以免费申请Let's Encrypt证书。这个证书的有效期是90天, 另外还需要配置自动续期功能。在申请的过程中, 用户填写了完整的域名信息, 并且选择了DNS验证的方式。

随后, 用户按照相关的提示, 在gname.xin的DNS管理页面添加了一条TXT记录。等那个审核步骤, 也就是验证通过之后, 再去下手下载那个证书文件, 这里面包含了两个个叫做fullchain.pem的文件, 还有一个叫做privkey.pem的文件, 这两个都需要你下载。

Nginx HTTPS配置

你需要把那个证书文件上传到服务器的, 位置是在 /etc/nginx/ssl/ 这个目录下面, 然后再去编辑一下, 跟当前站点对应的配置文件的内容。

server {
    listen 443 ssl;
    server_name yourdomain.com www.yourdomain.com;
    ssl_certificate     /etc/nginx/ssl/fullchain.pem;
    ssl_certificate_key /etc/nginx/ssl/privkey.pem;
    ssl_protocols       TLSv1.2 TLSv1.3;
    ssl_ciphers         HIGH:!aNULL:!MD5;
    location / {
        root  /var/www/html;
        index index.html;
    }
}

先执行那个叫做 nginx -t 的任务, 去校验一下配置的语法是不是正确的, 等到这个步骤通过之后, 再去执行那个叫做 nginx -s reload 的任务, 从而让修改完的配置能够正式生效。

HTTP 301跳转

在同一配置文件开头部分的地方, 进行追加操作。

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;
    return 301 https://$host$request_uri;
}

高权重域名配HTTPS:证书、Nginx、301重定向全搞定(图1)

这个设定就是让所有的HTTP访问请求, 统统都转到HTTPS去, 而且这种转向是永久性的, 目的就是为了防止搜索引擎那边收录到那些重复来的页面, 从而保住高权重域名在搜索结果里的索引分量, 不让它被稀释掉。

上线验证清单

你先在自己的浏览器里头输入http://yourdomain.com这个链接, 然后去确认一下它是不是会自动跳转到https开头的地址上面去, 还要看看浏览器的地址栏位置, 那里是不是会出现一个锁形状的小图标出来。

你需要去访问地址是https://yourdomain.com这个页面, 然后来再次确认一下,看看是否已经没有了那些关于证书的安全性的警告提示。

我们可以使用gname.xin网站提供的所谓“网站检测”这种工具, 或者选择去使用Google Search Console这个服务, 把你的那个HTTPS版本的URL地址提交进去, 从而来确认索引功能是不是属于那种正常运行的状态。

需要去检查一下那个robots.txt文件, 还要去看看那个sitemap.xml文件, 确保这俩里头提到的所有链接, 都已经给换成了 HTTPS 这样的格式。

关键注意事项

当高权重的域名完成从HTTP到HTTPS的切换之后, 在72小时这么一段时间里, 不要随便去改动网站的结构还有正文的内容, 这么做是为了避免搜索引擎在进行重新抓取的时候, 产生排名方面的波动现象。

必须在证书还没有到期的那个时间点之前的7天, 把续期手续给办了。在gname.xin控制台这个地方, 会在快要到期的时候发送邮件来提醒, 另外也可以去设置一下Cron Job, 让它去调用acme.sh这个脚本, 好实现自动续期的功能。

如果域名的DNS解析不是设置在gname.xin上面, 那么证书申请需要在对应的DNS服务商那边完成验证。这种情况下, gname.xin控制台不能代为进行操作。