本来想着将博客从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 |