给博客增加了 HTTPS 支持

话说

自去年开始,国内越来越多网站开始提供 HTTPS 访问支持,包括许多个人博客也都尝了鲜,HTTPS 已经不再是涉及金融交易等网站的专属。而 SSL 证书价格不断下降,也为普及安全私密访问降低了门槛。

看到许多个人博客都有了绿色的小锁头,我也一直心痒痒想尝试一下,为此去年底还买了一个独立 IP 的香港空间,无奈空间质量太渣,访问速度太慢,导致我直接放弃了这个念头,直到今天我发现了 SNI 技术。

SNI

SNI 技术的全称是 Server Name Indication,通俗点的说,通过这项技术,可以允许一个 IP 地址上部署多个 SSL 证书、让多个同 IP 的网站都支持 HTTPS 访问,从而不再要求部署 SSL 证书的网站拥有独立 IP 地址。这大大降低了 SSL 部署的成本,许多使用普通虚拟主机的网站也可以拥抱 HTTPS 了。

尝试

在确定我的主机商也支持 SNI 之后,我决定这次一定要让我的博客也拥有绿色小锁头。于是凌晨 12 点多跑到 GOGETSSL 上买了一个 Comodo 的 PositiveSSL 证书,两年 9.95 刀,PayPal 付款,接着就是验证域名所有权、配置证书信息等,说到验证域名所有权,Comodo 支持使用 hash 文件来验证,不用专门开设一个域名邮箱,这点非常方便。

等了几分钟,域名验证完成,就可以把证书上传到空间上了。cPanel 面板配置起来还是非常简单的,点几个按钮就好。然后试了一下 https://fullstack.im/ 已经可以访问了。

后续

虽然 Windows XP 不支持 SNI 技术,许多低版本的浏览器也不支持,但都是很低很低的版本,既然都已经用到了 CSS 3 的特性,自然也不再考虑这些低版本的客户端。于是决定修改 .htaccess 文件,强制所有请求都使用 HTTPS:

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://fullstack.im/$1 [R=301,L]

将以上语句加入到 .htaccess 中,便会自动判断请求是否使用 80 端口(HTTP),如果还是 80 端口则跳转到 HTTPS 的域名去。

至此,整个 SSL 部署完成,博客也正式支持了 HTTPS 访问,有了自己的绿色小锁头~

上一篇: 南澳岛:阳光、沙滩、海浪

下一篇: 收到 fir.im 送的礼包~