作者:dabing(王甜甜)

参加了又拍云的联盟活动,白嫖的 10G 的存储空间 + 15GB 的 CDN 免费流量,有域名并且已经备案的有网站的小伙伴也可以去试试:又拍云联盟 - 开发者帮助计划,为开发者加速 - 又拍云 (upyun.com)

image-20220909084820511

顺便申请了免费的 SSL 证书,你看我的小站现在是 https 开头的啦~~~

一些申领过程可以参考我友链中余白的博客:hexo 的优化:又拍云 cdn 加速 | 余白の小屋 (vipyubai.top)

我这里只是记录一下我在服务器 nginx 如何开启 https(SSL 证书)

# 获取证书

先从你的又拍云平台把已经颁发了的证书下载下来。

我的下载下来有两个文件:

  • blog.dabing.cool.crt
  • blog.dabing.cool.key

image-20220909085441872

# 服务器配置 nginx

我参考的这篇文章:Nginx 配置 SSL 证书

懒得再写一次了,这里记录一下我的配置

# 1. 先检测一下自己的环境是否允许:

nginx -V

看到这个 --with-stream_ssl_module 那就 ok

image-20220909090711795

openssl version

image-20220909090843974

rpm -qa | grep open  # 查询是否安装 openssl

image-20220909091040936

# 2. conf.d/ 的文件配置

再你的 etc/nginx/conf.d/ 文件夹下创建一个文件,我的是 etc/nginx/conf.d/blog.conf

我的配置内容如下:/var/www/hexo

值得注意的是:# 如果你的 ssl on 爆红或者你的 nginx 是 1.15.x 以上版本的话

得将 listen 443ssl on 改成 listen 443 ssl

server {
    listen 443 ssl;  # 如果你的 ssl on 爆红或者你的 nginx 是 1.15 以上版本的话,
    server_name blog.dabing.cool;     # 填写绑定证书的域名
    ssl_certificate /etc/nginx/cert/blog.dabing.cool.crt;
    ssl_certificate_key /etc/nginx/cert/blog.dabing.cool.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;    # 按照这个协议配置
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;     # 按照这个套件配置
    ssl_prefer_server_ciphers on;
    location / {
        root /var/www/hexo;    # 站点目录
        index  index.html index.htm;
    }
}
server{
    listen       80 default_server;
    listen       [::]:80 default_server;
    server_name  xxx.xx.xxx.xx; # 这里可以填你的主机 ip
    root         /var/www/hexo;
    rewrite ^(.*) https://blog.dabing.cool;   # 添加的语句
}

然后重启 nginx 即可:

systemctl restart nginx.service 重启

如果你遇到类似这样的错误:

Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.

有可能是你的 80 端口或者 443 端口被占用着,命令查看一下

ps -ef|grep nginx

有就把进程杀掉,再重启即可。

kill -9 pid

再访问看看:https://blog.dabing.cool/

image-20220909100723165

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

Dabing-He 微信支付

微信支付