阿里云盾证书服务助力博客装逼成功

写在开始

前段时间网站全部静态文件都上了阿里云CDN,session存储和缓存交给了阿里云Redis,从此也走上了高逼格的道路,并成功装逼了一把。

相关文章:

阿里云(企业云解析DNS)让你的博客飞起来

阿里云Redis加速Discuz论坛访问

但是,楼主觉的这还远远不够,在这个信息安全重于泰山的时代。谷歌的搜索和Chrome浏览器,早就 推动往HTTPS协议的过渡,提醒网站明文传输的HTTP“不安全”。同样,Facebook、Twitter也陆续加入了阵营。国内的百度也大魄力推进并规划HTTPS项目,也是希望产业界认识到“HTTP = 不安全”的严重性。

周围的很多小伙伴们也加入HTTPS的阵营,然而,我等屁民,网站怎么还好意思使用HTTP?(当然,对于我小小的博客而言,有必要么?有必要么?有必要么?哈哈哈,真没必要,真没必要,真没必要)。

HTTPS简介

HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。具体是如何进行加密,解密,验证的,且看下图。

相关环境

操作系统:Linux centos 6.5
Web服务器:nginx/1.10.3
博客程序:Typecho
内容分发:阿里云CDN

阿里云证书服务

常见问题:https://help.aliyun.com/knowledge_list_page/42212/2.html

不要感谢我 请叫我雷锋。

申请SSL证书

阿里云控制台-安全(云盾)-证书服务。

点击右上角的购买证书即可,这里大家可以选择免费型DV SSL。免费数字证书,最多保护一个明细子域名,不支持通配符,一个阿云帐户最多签发20张免费证书。证书品牌:赛门铁克是 SSL/TLS 证书的领先提供商,为全球一百多万台网络服务器提供安全防护。选择赛门铁克后,证书颁发机构 (CA) 将妥善保护您的网站和信誉,让您安枕无忧。

好了,至于如何购买,如何签发,这里就不做过多的介绍。傻瓜操作,跟淘宝下单一样,老太太都会。当然,这里要注意的一点是,证书不会立即签发,配置好以后,需要稍等片刻(一般10-30分钟的样子,有时候更快)。

配置SSL证书

推送CDN

由于使用了阿里云的CDN,阿里云证书也提供了相关的推送服务。点击列表推送按钮,如下:

下载证书

阿里云为各种Web服务器都提供了相应的证书,点击列表下载,如下:

配置Nginx

上传证书到执行目录,由于是针对Typecho博客程序的一些伪静态配置,可能不尽相同,如下是相关conf配置:

server{
        #监听的443端口
        listen 443;
        server_name blog.52itstyle.com;
        index index.php;
        ssl on;
        #证书路径 星号替换成自己的就ok
        ssl_certificate    /usr/local/nginx/cert/214080632.pem;
        #私钥路径
        ssl_certificate_key   /usr/local/nginx/cert/21400632.key;
        #缓存有效期
        ssl_session_timeout 5m;
        #可选的加密算法,顺序很重要,越靠前的优先级越高.
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        #安全链接可选的加密协议
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        root /mnt/www/domains/blog.52itstyle.com;
        error_page  404               /404.html;
        #Custom rules Start
       if (-f $request_filename/index.html){
            rewrite (.*) $1/index.html break;
       }
       if (-f $request_filename/index.php){
           rewrite (.*) $1/index.php;
       }
       if (!-f $request_filename){
          rewrite (.*) /index.php;
       }
       #Custom rules End
       location = /500.html {
          root   /usr/share/nginx/html;
       }
       location ~ \.php$ {
          fastcgi_pass 127.0.0.1:9000;
          include        fastcgi_params;
          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
          access_log     /usr/local/nginx/logs/blog.52itstyle.com.access.log main;
      }

      location ~ /\.ht {
         deny  all;
      }
}

Typecho设置

登录Typecho后台 -> 设置 -> 基本设置 -> 站点地址改成https的域名是必须的。

编辑Typecho站点根目录下的文件config.inc.php加入下面一行配置,否则网站后台还是会调用HTTP资源。

/* 开启HTTPS /
define('__TYPECHO_SECURE__',true);

由于Chrome浏览器对HTTPS要求较高,其他浏览器已经显示小绿锁,但是Chrome还是有警告提示。这时候你只需F12查看,如果存在url连接还是http请求谷歌下就不会显示小绿锁。

  • 如果使用了第三方模版,登录Typecho后台 ->控制台-> 外观 ->设置外观 -> cdn镜像地址改成https的域名。
  • 如果你使用的是原生评论,评论表单的action地址还是HTTP,找到站点主题目录下的comments.php文件,并搜索$this->commentUrl(),将其替换为:echo str_replace("http","https",$this->commentUrl()); 最后保存(还好使用的是畅言,已经接入HTTPS了)。
  • 阿里云的CDN 400地址居然是HTTP,显然不符合要求,暂时去掉了。
  • 文章中的图片地址居然是绝对路径,由于以前是HTTP,所以还要替换一下数据库部分内容,执行以下语句(替换成自己的URL即可)
    UPDATE `blog`.`typecho_contents`  SET TEXT=REPLACE (TEXT,'http://blog.52itstyle.com','https://blog.52itstyle.com') ;
    

HTTP重定向到HTTPS

好了,到此为止,重启Nginx,你的网站已经可以跑在HTTPS上面了。但是这样HTTP的方式还是可以访问的,我们可以通过WEB服务器(Ningx)将80端口(HTTP)重定向到443端口(HTTPS),强制全站HTTPS。当然,本人并没有配置成功,不是无法访问就是重定向次数过多,不知道是否与CDN有关?逗比了不想捯饬了,如有人配置成功,敬请告之。

目前的解决方案,在公用header.php中添加如下JS代码:

<script type="text/javascript">
var url = window.location.href;
              if (url.indexOf("https") < 0) {
                  url = url.replace("http:", "https:");
                  window.location.replace(url);
              }
</script>

配置成功

按照以上流程,基本不会出现问题了,清除浏览器缓存访问下自己的网站,浏览器会显示安全的小绿锁标识。

好了,配置成功以后,有没有一种被绿绿的感觉?

假装有网址:https://blog.52itstyle.com

时间: 2024-10-30 08:44:22

阿里云盾证书服务助力博客装逼成功的相关文章

免费好用的阿里云云盾证书服务(https证书)申请步骤

推荐一个免费的阿里云产品:云盾证书(https证书) 为了能让非专业人士看懂,同样尽量用直白的话,一般来说:当你个人需要建立网站,或者公司要建立官网.商城,通常需要先购买服务器或云主机,虚拟空间,然后将网页和程序.数据库部署上去,用户就可以用浏览器访问了,比如说浏览页面的内容.登录.发表评论.购物等. 这时候浏览器默认是通过http协议与网站所在的服务器进行数据交互的,由于历史的原因,http被证实并不是那么安全,容易被别有用心的人窃取信息,于是就出现了https,也就是把http加密传输,区别

容器监控—阿里云&amp;容器内部服务监控

目前Docker的使用越来越离不开对容器的监控,阿里云最近上线了容器服务,不但提供了核心的容器和宿主机监控能力,而且支持集成 Cloud Insight 监控,下面会介绍如何集成. 首先介绍一下阿里云的容器监控.阿里云容器服务在用户创建集群的时候就默认开启了几个容器服务,其中就包括一个容器监控服务,其监控大概就是使用这个服务来采集数据的. 容器监控的对象就是各个正在跑的容器本身的运行状况,而如果你想要监控在容器里面运行的服务的状况呢?这时候Cloud Insight 就可以帮到你了. 那么我们先

使用阿里云开放搜索服务快速搭建资源搜索网站

大家好,我又来了,答应云栖论坛一周一篇文章, 由于工作太忙已中断1个多月实在抱歉,这一次写点轻松有趣的东西-快速的做个资源搜索站 依稀记得十来年前,带宽还只有2M的时候,受各个论坛启发,做了可以搜索嘿嘿嘿资源的搜索站 一晃这么多年过去,嘿嘿嘿的东西依然喜欢,但世间却变化万千 资源种类已不仅仅是X片,高清电影.纪录片.无损音乐.美剧.大型软件等等,似乎更加吸引 资源呈现方式也百花齐放,从最早的BT文件.电驴地址,到现在的磁链地址.各种云盘等等 而传统的P2P下载方式也变得格格不入,因为硬盘容量已经

专·新·智·惠——阿里云引领云计算服务不断进化

2016年度最精彩的云计算盛会,杭州云栖大会正在杭州云栖小镇盛大召开.本届云栖大会的主题是"飞天·进化",服务作为飞天的核心能力之一,和飞天相生相伴,在云计算的长跑路上持续进化.本届杭州云栖大会,阿里云服务集体亮相,在服务主展台集中展示了覆盖公共云.专有云的全生命周期的支持计划.尊享服务和区域服务,更有云博士.智能质检和自动诊断等黑科技露面. 作为会议期间服务的重头戏,14日举办了以"用心做好服务,用技术开拓未来"为主题的服务专场,内容涵盖阿里云公共云.专有云的服务

阿里云湖北区域服务提供商:阿里云CDN功能介绍

阿里云湖北区域服务提供商官方唯一指定武汉捷讯技术.关于阿里云CDN功能介绍如下: 阿里云CDN(内容分发网络)全称是AlibabaCloudContentDeliveryNetwork,建立并覆盖在承载网之上.由分布在不同区域的边缘节点服务器群组成的分布式网络,替代传统以WEBServer为中心的数据传输模式.将源内容发布到边缘节点,配合精准的调度系统:将用户的请求分配至最适合他的节点,使用户可以以最快的速度取得他所需的内容,有效解决Internet网络拥塞状况,提高用户访问的响应速度.使用CD

Laravel框架中实现使用阿里云ACE缓存服务

这篇文章主要介绍了Laravel框架中实现使用阿里云ACE缓存服务,本文扩展了一个ACE缓存驱动,以便使用阿里云ACE缓存服务,需要的朋友可以参考下 之前我写了一篇在 Laravel 4 框架中使用阿里云 OCS 缓存的文章,介绍了如何通过扩展 Laravel 4 来支持需要 SASL 认证的阿里云 OCS 缓存服务.有网友问我,ACE 的缓存怎么在 Laravel 4 中使用.我本来觉得应该可以完全用相同的办法,后来自己尝试的时候才发现,ACE 的缓存差别非常大.所以再写一篇,介绍一下如何在

如何接入阿里云短信服务 (完整指南)

目录 一.注册并实名认证 二.开通短信服务 三.获取AccessKey 四.设置短信内容 五.配置短信接口 六.发送短信 七.常见问题FAQ 一.注册并实名认证 使用阿里云短信服务,用户需要先在阿里云注册,并完成个人/企业实名认证. 注意:要发送营销短信的用户,必须完成企业实名认证 1.1 注册阿里云:点此注册  1.2 实名认证:点此认证  1.3 绑定企业支付宝: 点击绑定企业支付宝   二.开通短信服务 2.1.开通短信服务:点击开通短信服务 2.2 子账号页面:点击查看子账号页面 2.3

阿里云资源编排服务 Java SDK使用入门

阿里云资源编排服务 Java SDK使用入门 安装依赖 添加Maven库 <repositories> <repository> <id>sonatype-nexus-staging</id> <name>Sonatype Nexus Staging</name> <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> &

通过命令行工具使用阿里云资源编排服务

资源编排ROS 是一种简单易用的云计算资源管理和自动化运维服务.用户通过模板描述多个云计算资源的依赖关系.配置等,并自动完成所有资源的创建和配置,以达到自动化部署.运维等目的. 了解更多 通过命令行工具使用阿里云资源编排服务 资源编排服务(ROS)支持用户通过模板文件定义所需的云资源,描述资源间的依赖关系和配置详情,并自动完成资源的创建和配置,以达到自动化部署.运维等目的. 作为一种自动化运维工具,阿里云ROS屏蔽了底层资源操作的复杂性,使得对基础设施资源的管理通过简单的代码就可以实现. 命令行