- A+
所属分类:环境配置
当博客申请为ssl时,就逐渐的让身边的开始也把网站转成HTTPS,一方面这是未来的走向,另一方面安全系数有所提高,再来专业,好看。
科普贴包含:
老网站升级HHTPS
本次更新的是朋友的两个网站,一个是企业官网(https://www.xinmeike.cn),一个是个人的渣博客(https://www.liuminhua.com)
服务器本身是用lnmp集成环境包撸的网站,所以主要的几个操作如下:
1、删除原网站的配置文件
- lnmp vhost del
- //会列出所有虚拟机
- Please enter domain you want to delete: www.xinmeikeji.cn //删除需要重新配置的虚拟机
2、上传ssl证书
关于证书,可以在各大IDC中去申请,个人免费版的多的是,至于哪个好哪个不好,仁者见仁智者见智,这里不扩展阅读。
3、新增网站配置文件
- lnmp vhost add //添加虚拟机
- +-------------------------------------------+
- | Manager for LNMP, Written by Licess |
- +-------------------------------------------+
- | https://lnmp.org |
- +-------------------------------------------+
- Please enter domain(example: www.lnmp.org): www.xinmeikeji.cn //输入域名
- Your domain: www.xinmeikeji.cn
- Enter more domain name(example: lnmp.org *.lnmp.org): //输入其他域名,如没有直接回车
- Please enter the directory for the domain: www.xinmeikeji.cn
- Default directory: /home/wwwroot/www.xinmeikeji.cn: //默认目录创建在home下,可以选择其他的目录地址,但一定是绝对位置。
- Virtual Host Directory: /home/wwwroot/www.xinmeikeji.cn
- Allow Rewrite rule? (y/n) n //是否开启伪静态
- You choose rewrite: none
- Allow access log? (y/n) n //是否开始日志
- Disable access log.
- Create database and MySQL user with same name (y/n) n //创建数据库
- Create ftp account (y/n) n //创建FTP
- Add SSL Certificate (y/n) y //增加SSL
- 1: Use your own SSL Certificate and Key //自己有证书
- 2: Use Let's Encrypt to create SSL Certificate and Key //使用 Let's Encrypt证书, Let's Encrypt需要每三个月申请一次,www.lijinlong.cc博客用的就是这个,再开启CDN的话,要每三个月搞下
- Enter 1 or 2: 1 //选择1
- Please enter full path to SSL Certificate file: /home/*****/ssl/www.xinmeikeji.cn.crt //输入crt文件的绝对地址,证书是腾讯云申请的个人免费版
- Please enter full path to SSL Certificate Key file: /home/*****/ssl/www.xinmeikeji.cn.key //输入key文件的绝对地址
- Press any key to start create virtul host... //按任意键创建成功
4、完成。
现在查看网站即可看到,网站是可以使用HTTPS打开。
5、强制http跳转至https
- cd /usr/local/nginx/conf/vhost //进入虚拟机
- vi www.xinmeikeji.cn.conf //使用vi编辑器,对内容进行修改编辑
- i //使用vi编辑器输入I,表示插入状态
- server {
- listen 80;
- server_name www.xinmeikeji.cn;
- rewrite ^(.*)$ https://${server_name}$1 permanent; //跳转
- }
- server {
- listen 443;
- server_name www.xinmeikeji.cn;
- root /home/wwwroot;
- ssl on;
- ssl_certificate /etc/nginx/certs/server.crt;
- ssl_certificate_key /etc/nginx/certs/server.key;
- ....
- }
- :wq //使用vi编辑器需要按下ESC,退出编辑状态,输入:wq 意思为保存并关闭内容
6、修改配置文件后,需要重新启动nginx(1-2秒的事)
- /etc/init.d/nginx restart
HTTPS没有提示安全,只有感叹号是怎么回事?
其实这个主要问题来源于网页当中有http的绝对地址,当页面中出现http://www.xinmeikeji.cn的时候,就无法直接显示安全的那个绿标。也可以通过右键审查元素,查看Console的报错内容
修改上述文件的绝对地址后,网站即可显示安全。
本文完,感谢刘总提供网站做实验田。