最近看了阿里安全的一篇文章全球HTTPS时代已来,你跟上了吗?写的很浅显易懂,想了想也趁此机会去把自己Blog更新成HTTPS的吧,对于淘汰旧的技术,我一向都是超级支持的。
当然第一步就是证书了,这里StartSSL可以注册,免费一年,可以无限续期。这个网站注册很有意思,用一次性密码登录过后,可以下载你对应的证书,安装在浏览器中,之后就可以使用了。登录到他们的后台,选择「Validations Wizard」把自己的域名添加进去就可以了。
在选择「Certificates Wizard」中填入CSR,这个CSR可以直接在Vps主机里面用命令生成:
openssl genrsa -out domon.pem 2048
openssl req -new -key domon.pem -out domon.csr
接着下一步,会下载下来StartSSL免费的SSL包,里面对应了常用的几种Web环境:N、A、IIS。
注意:Apache的证书是两个,需要把Root里面的复制到域名crt文件中。简单的方法就是直接使用Nginx目录下面的。
完了后,把这个crt文件上传到Vps当中,修改下配置文件,下面以Nginx为例:
修改 listen 80 —> listen 443 ssl
添加 ssl_certificate 下载后的crt文件
添加 ssl_certificate_key 生成的key文件
-
注意:每一行都需以分号结尾
listen 443 ssl; server_name www.domon.cn; index index.html index.htm index.php; root xxx; ssl_certificate xxx/domon.crt; ssl_certificate_key xxx/domon.key ;
确认无误的话,就可以重启下Nginx的服务,就可以带s的访问自己的主站了。
service nginx restart
后记
Chrome对于Https要求很高,在刚弄玩站的时候,我这里一直红色感叹号:
由于我用的是Typecho,所以需要在他的配置文件config.inc.php中加入这样一行,开启Https资源
/** 开启HTTPS */
define('TYPECHO_SECURE',true);修改当前主题下面的评论comments.php
$this->commentUrl(),将其替换为:echo str_replace("http","https",$this->commentUrl());发现我加的Cnzz统计是http的,我也将其替换成https的。
但是最终还有一个东西,我的图片资源是借用了下Orrindeng的域名,这酸爽,先把引用的这个图片删除了去就行了。
有时间在用个新的域名绑定下七牛的Https访问就好了。