本来想着将博客从github迁移到云服务器之后,访问速度能够快一点的,但是发现实际访问还是很慢。这是因为google浏览器会强制转换为https协议,意思就是说需要配置ssl证书啦
免费ssl证书获取

在这里可以获得免费的ssl证书,使用期限一年

点击【立即购买】即可免费获得20张证书

购买之后,点击【创建证书】,就会生成下面框中的内容

点击【证书申请】

点击【下一步】。这里会自动添加DNS解析,我们直接点【验证】,提交即可

过了一会就会发现申请通过,就像这样

我们点击下载,选择nginx

Nginx上的配置
nginx的相关配置一般都在/etc/nginx/
目录,因为nginx版本的不同,该目录中的内容一般都会不同,该目录在我机子上的内容如下所示:

nginx.conf
是最最最重要的配置文件,其中nginx.conf
文件又会把conf.d/
目录中.conf
文件内容和sites-enabled/
目录中的文件内容直接include进来,include语句主要是这几句:
1 | include /etc/nginx/conf.d/*.conf; |
下面介绍一下我机子上nginx.conf
文件的内容,主要是一些基础配置。我们可以看到最后两行include的内容,就是上面的内容。个人建议把一些站点的配置都放到./sites-enabled/
或者./conf.d
目录中,方便日后管理(增删只有删除相应文件即可)。
接下来开始正式配置。为了方便日后SSL证书的管理,我们在etc/nginx
目录中创建一个cert
目录,然后把下载下来的证书拷贝到/etc/nginx/cert
目录中。为了方便,改了下证书名字

之后进入./sites-enabled/
目录,创建一个文件为www.npfs06.top
(取名为这个,是为了方便管理)

之后把下面的内容复制粘贴到 www.npfs06.top
这个文件中
1 | server { |
同理配置https://npfs06.top
,只需要在文件中增加一下内容
1 | server { |
需要注意一下几点:
server_name
需要配置为你自己的域名;root /var/www/html/npfs06.github.io;
这个是你网站的所在的目录;ssl_certificate cert/www.npfs06.top.pem;
pem文件的路径;ssl_certificate_key cert/www.npfs06.top.key;
ket文件的路径;
http的重定向
1 | server { |
上面代码中的这样部分是为了在使用http访问站点时,能自动跳转到https访问
nginx配置文件配置完成之后需要重启nginx
1 | service nginx restart |
补充
在重启配置nginx的时候,可以会遇到报错,这是因为在某些细节山有错误,不如说忘记加分号
我们可以通过如下命令查看详细的报错信息
1 | nginx -t |