网站全面升级Https协议

最近看了阿里安全的一篇文章全球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要求很高,在刚弄玩站的时候,我这里一直红色感叹号:

网站全面升级Https协议_第1张图片
  • 由于我用的是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访问就好了。

你可能感兴趣的:(网站全面升级Https协议)