安装SLL证书(HTTPS)

博客:https://bilibe.com

安装SLL证书(HTTPS)

参考

登录:https://buy.wosign.com/free/#ssl 申请免费ssl证书

申请沃通SSL证书参考:http://www.laozuo.org/3215.html

安装SSL参考:http://www.laozuo.org/5571.html

第一步、部署HTTPS基础工作准备

A - 我们需要在自己已有的VPS环境中是用LNMP一键包安装的,如果没有安装或者不清楚可以参考"LNMP一键安装包基础教程目录"文章。

B - 这里老左是用沃通免费SSL作为演示的,所以我已经申请好免费的SSL,且解压证书文件我们可以看到里面有各种环境的。

lnmp-ssl-1

因为这里我们是用NGINX WEB环境的,所以我们需要解压FOR NGINX.ZIP文件包,然后看到一个CRT一个KEY文件。

第二步、上传和部署SSL证书

A - 把上面的一个CRT一个KEY文件上传到VPS ROOT目录中,然后对应修改成SSL.CRT和SSL.KEY文件名,或者我们用作其他命令都可以。

B - 解密私钥和设置权限

openssl rsa -in ssl.key -out /root/ssl.key

chmod 600 /root/ssl.key

登录SSH,执行上述两行脚本,解密私钥和授权。

第三步、在LNMP环境部署站点SSL设置

我们需要在已有的LNMP添加了站点,然后在站点对应的CONF文件设置。

在"/usr/local/nginx/conf/vhost/"目录文件中,找到对应站点的conf文件,然后修改设置如下


{

listen 80;

listen 443 ssl;

#listen [::]:80;

ssl on;

ssl_certificate /root/ssl.crt;

ssl_certificate_key /root/ssl.key;

server_name laozuo.org www.laozuo.org;```

上面的红色标注部分是我添加的,对应路径我们要与之前上传的CRT和KEY文件路径对应以及文件名不要搞错。

最后,我们重启LNMP,可以看到SSL证书生效,且HTTPS可以访问站点。

###遇到的问题


1、目录放错


2、申请过程中只添加一个未带WWW域名导致访问提醒证书无效


3、不显示小绿锁


3.1,是网站存在其他网站非加密地址,即没有https。

3.2,网站内存在非https图片等等

解决办法:去除其他网站css、js文件,手动给网站图片添加https即可解决。

使用mysql语句更便捷

具体参考:https://www.zhihu.com/question/47681812/answer/108500968

4、关于安装好SSL后网站不自动跳转https


能想到的方法就是修改rewrite

配置

[html]view plaincopyprint?

server {

listen 192.168.1.111:80;

server_name test.com;

rewrite ^(.*)$ https://$host$1 permanent;

}```

搭建此虚拟主机完成后,就可以将http://bilibe.com 的请求全部重写到 https://bilibe.com上了

我自己博客用的是在偷懒的办法直接在公共文件加了一段js代码,代码如下:

var url = window.location.href;

if (url.indexOf("https") < 0) {

url = url.replace("http:", "https:");

window.location.replace(url);

}```

让浏览器强制从http跳转到https,https到此完工。

你可能感兴趣的:(安装SLL证书(HTTPS))