申请证书

在腾讯云SSL证书界面申请即可,过程很快,十分钟就通知证书申请成功。

下载证书并上传至云服务器

在腾讯云SSL证书面板,找到要部署网站的证书,点击右侧的下载按钮即可下载

SSL证书面板

zip包文件结构:

zip_struct

由于使用Nginx服务器,需要使用的文件全部放在Nginx文件夹下:

将这两个文件复制到服务器Nginx安装路径下,我服务器上的安装路径为/etc/nginx

root@VM-24-3-ubuntu:/# mv /home/ubuntu/download/1_comfluter.life_bundle.crt /etc/nginx
root@VM-24-3-ubuntu:/# mv /home/ubuntu/download/2_comfluter.life.key /etc/nginx
root@VM-24-3-ubuntu:/# cd /etc/nginx
root@VM-24-3-ubuntu:/etc/nginx# ll -s
total 80
4 drwxr-xr-x   8 root   root   4096 Nov 21 10:05 ./
4 drwxr-xr-x 115 root   root   4096 Nov 15 15:50 ../
4 -rw-rw-r--   1 ubuntu ubuntu 3921 Nov 21 08:37 1_comfluter.life_bundle.crt
4 -rw-rw-r--   1 ubuntu ubuntu 1700 Nov 21 08:37 2_comfluter.life.key
4 drwxr-xr-x   2 root   root   4096 Nov 15 16:48 conf.d/
4 -rw-r--r--   1 root   root   1077 Feb  4  2019 fastcgi.conf
4 -rw-r--r--   1 root   root   1007 Feb  4  2019 fastcgi_params
4 -rw-r--r--   1 root   root   2837 Feb  4  2019 koi-utf
4 -rw-r--r--   1 root   root   2223 Feb  4  2019 koi-win
4 -rw-r--r--   1 root   root   3957 Feb  4  2019 mime.types
4 drwxr-xr-x   2 root   root   4096 May 26 01:10 modules-available/
4 drwxr-xr-x   2 root   root   4096 Nov 15 15:50 modules-enabled/
4 -rw-r--r--   1 root   root   1512 Nov 15 16:53 nginx.conf
4 -rw-r--r--   1 root   root    180 Feb  4  2019 proxy_params
4 -rw-r--r--   1 root   root    636 Feb  4  2019 scgi_params
4 drwxr-xr-x   2 root   root   4096 Nov 15 16:40 sites-available/
4 drwxr-xr-x   2 root   root   4096 Nov 15 16:48 sites-enabled/
4 drwxr-xr-x   2 root   root   4096 Nov 15 15:50 snippets/
4 -rw-r--r--   1 root   root    664 Feb  4  2019 uwsgi_params
4 -rw-r--r--   1 root   root   3071 Feb  4  2019 win-utf

编辑Nginx服务器配置

更改/etc/nginx/sites-enabled下服务器配置文件:

server {
    listen 443 ssl;
    #填写绑定证书的域名
    server_name comfluter.life; 
    #证书文件名称
    ssl_certificate  1_comfluter.life_bundle.crt; 
    #私钥文件名称
    ssl_certificate_key 2_comfluter.life.key; 
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
            #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。 
            #例如,您的网站运行目录在/etc/www下,则填写/etc/www。
        root /home/ubuntu/www/Blogs/Personal;
        index index.html index.htm;
    }
}
server {
    listen 80;
    #填写绑定证书的域名
    server_name comfluter.life; 
    #把http的域名请求转成https
    return 301 https://$host$request_uri; 
}

配置中前半部分为https网页服务,后半部分为将http请求重定向至https请求

验证配置文件:

root@VM-24-3-ubuntu:/etc/nginx# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

重启Nginx服务器:nginx -s reload

https访问!

此时输入comfluter.life访问时即可看到已经是https连接

Debugging

更改成为https连接后博客的搜索功能出现问题,浏览器提示提交的表单不安全并阻止了搜索表单的提交。问题在于没有更改hugo博客配置文件中的baseURL字段,将其改为baseurl: https://comfluter.life即可解决。