讓你的WordPress小站搭上WebP的快車

Google家開源的WebP圖形編碼格式出來已經好幾年了,瀏覽器支援率現在也是非常高的了(現代瀏覽器就Safari不支持)。相比於常用的JPEG和PNG,使用WebP可以節省高達80%的空間(在今天行動網路的時代,這意味着更快的載入)。

當然了,還是不想拋棄堅守Internet Explorer和蘋果家Safari的用戶,所以我們需要一個聰明的外掛程式,在支援WebP的瀏覽器上使用WebP圖形,不支援的話則提供JPEG或者PNG檔案。隨便Google到的一個頗爲流行的免費開源程式WebP Express就是這輛帶我們上路的快車。

在WordPress後臺Plugins頁面搜尋下載好WebP Express並啓用。如果你使用的是Apache,它開箱即可用。如果你使用的是nginx,則需要按照說明稍微配置一下。這裏用的是nginx,而我選的是簡單的CDN Friendly選項,然後批量將全部圖形檔案轉換成了WebP(原始檔案是不會動的)。Alter HTML那個選項一定要開啓不然什麼也不會發生……

用此前的日本兩京遊記做了一下對比,未啓用掛件的時候頁面大小爲1.8MB,加載用時4.32秒。啓用掛件後頁面大小減少到了1.4MB,加載用時3.52秒。對比提升效果還算明顯,當然了,那篇文章裏面照片很多,一般的文章頁面效果估計甚微。

本博客默认取消https加密

实在算不上是“优化”,到还是归类到本站优化的分类了。GFW太操蛋,国内网络环境是一天天在恶化,新领导班子也没看见政策上有什么变化,哎,T_T……

目前https访问本站的速度巨慢无比,遂切换回http连接。https连接依然可用,只是默认走http而不是https,以便国内朋友能顺畅地访问。

继续懒得码字写新技术文章的节奏,我估计9月开学之后我会恢复码字的。cheers!

 

P.S. 即使在爱尔兰用https访问我自己的博客也明显比http要慢,所以应该不是GFW的原因。不管如何,https依然可用(我又去续了StartSSL证书),如果您非常在意安全性的话,请使用https访问。

09 June 2015 Update:

之前的https缓慢的问题是使用奇虎Google Fonts反代造成的。目前已经切回到Google Fonts,今后类似的服务出现国内无法访问也不会再做类似地变更。所以,现在又全站默认启用https了。

Nginx监听IPv6地址端口的正确操作方法

先在终端下输入以下指令,看看输出结果有没有–with-ipv6,没有的话就需要重新编译带有ipv6支持的nginx了。

nginx -V

编译nginx就不在这里说了,下面讲一下正确地配置nginx让其同时监听IPv4和IPv6的端口(包括http协议的80和https协议的443端口),同时介绍一下只监听IPv6和特定IPv6地址的方法。

Continue reading “Nginx监听IPv6地址端口的正确操作方法”

博客已经从Apache切换到Nginx

为了世界的和平,为了爱和正义,鄙人的博客!已经从Apache切换到Nginx了,Хорошо!

占用内存明显下降了有木有!响应速度提升了有木有!128MB的VPS也能轻松凉快不少了有木有!

基本都已经转移过来了,不过部分RewriteRule还没有改写(主要是默认从http往https的跳转)。另外由于CentOS安装的nginx包没有开启spdy支持,我也懒得自己编译,所以SPDY就暂时没有启用了……

2014-03-15补记:

之前脑残忘记配置php-fpm,结果是内存和Swap爆满……万幸没有宕机。今天赶紧修改/etc/php-fpm.d/www.conf,主要改pm相关字段:

pm = dynamic#默认
pm.max_children = 6#平均一个php-fpm子进程占用内存5~10MB,发生内存泄漏时可能占用20M,对于128M内存的VPS,访问量也不大,6个够了
pm.start_servers = 1#小内存VPS启动1个子进程没商量
pm.min_spare_servers = 1#最少闲置子进程1个
pm.max_spare_servers = 3#最多闲置子进程3个
pm.max_requests = 1000#子进程访问量达到1000次后重生,以防止第三方模块/程序内存泄漏的影响

如果访问出现了问题,请在本文后留言。

参考文章: PHP:配置 – Manual

Apache服务器启用SPDY协议加快传输本博客内容

Apache确实占用资源比较多……嗯,不过博客访问量也不大,还能应付过来。今天看到SPDY的已获得Chrome、Firefox、Opera、IE等众多浏览器的支持,于是萌生念头让博客的https访问使用SPDY协议(不用担心,不支持的会自动fallback到普通https协议)!嗯,没错,SPDY协议是一个全新的加密层传输协议,你的站点得先有SSL证书并能顺利通过普通https访问上!

Apache、Nginx都支持SPDY协议,Apache是通过mod_spdy这个模块来实现的,但是博客使用的是WordPress(PHP内容),需要禁用mod_php改用mod_fcgid来确保PHP的线程安全。下面分享一下做法。

Continue reading “Apache服务器启用SPDY协议加快传输本博客内容”

MySQL数据引擎InnoDB和MyISAM互相转换

MySQL(或者社区开源fork的MariaDB)5.5以上支持InnoDB引擎,并将其作为默认数据库引擎。InnoDB带来很多改进,但是对系统资源占用明显增加,对于还在128MB~512MB内存VPS挂WordPress博客的筒子们来说,InnoDB是不合适的,还是得换回MyISAM这批老马!

Continue reading “MySQL数据引擎InnoDB和MyISAM互相转换”

本WordPress博客内容现已完全沉浸在SSL保护之中

访问本站的筒子们有没有发现地址栏上优雅动人的绿色小锁呢(昨天还是黄色小三角形)?:D 现在您在本站访问的全部内容都通过HTTPS传输了哦~通过http协议访问也会被直接跳转到https(除网络爬虫和IE 9以下用户)。

想知道怎么做到的吗?嗯,本文就是来分享一下的。大体上都可以照着底下给出的参考文章来操作,我在这里补充一些细节。

Continue reading “本WordPress博客内容现已完全沉浸在SSL保护之中”

博客迁移到Ramnode VPS

LowEndBox可以找到很多便宜的VPS,有些速度也不错,服务也很好。Ramnode就是其中一个。

昨天晚上买下来,现在博客已经从OpenShift迁移到位于亚特兰大的VPS上了,StartSSL证书也搞上了,建议以后各位用https协议访问本博客以保护您的上网安全!^@^

我的VPS套餐按目前的优惠方案便宜15%后折合人民币124块一年,可选5G SSD或者50G SSD-Cached两种硬盘(都是RAID10),我选的是后者(5G毕竟太小,不利于扩展VPS的「业务」)。1个100M带宽的IPv4地址(可付费再增加一个IPv4地址),16个IPv6地址!128MB的内存和128MB的vSwap,每月500G流量。

嗯,这么便宜当然是OpenVZ不是KVM也不是Xen,但是这个OpenVZ是新版的支持PPP、TUN什么的(即可以安装PPTP VPN)。有SolusVM面板,支持CentOS 5/6/Debian/Ubuntu/SUSE/Fedora等Linux发行版。

再说下去都快变成打广告了,打住……

目前至少自我感觉博客的响应速度比之前快一些了,所以安全宝也暂时停用掉了减少流量消耗。

主题换成WordPress 3.7自带的这个了(Twenty多少我忘了),哪天有时间把配色换一下,这Ubuntu-like的色系太恶心了。(现在是「哟雅美腻」的Fedora-like配色咯)

OpenShift博客故障恢复笔记

一天前从OpenShift Status了解到OpenShift平台要进行更新,在上面的应用将自动进入maintaince(维护状态),平台更新后,应用将自动恢复运行。

自动化的工程总是容易有意外,比如我的博客就是放在OpenShift上的,结果恢复后,MySQL这个Cartridge挂了,WordPress提示我连接数据库失败。我尝试重启mysql,

rhc cartridge restart mysql-5.1 --app blog

结果我根本访问不了博客了,请求发送过去得不到正常的响应。然后我试过重启应用,也不行。后来病急乱投医,干脆杀掉所有挂起的进程然后再启动应用。

Continue reading “OpenShift博客故障恢复笔记”

安全宝+WDCDN+Incapsula+DNSPod实现全球CDN加速

这样的文章是Google、百度一抓一大把的,不过我觉得还是有必要记录一下的。目前本站运用的就是这样的全球CDN加速,当然重点是加速天朝的访问,同时不影响北美的访问。

首先必须保证域名的NS已经切换到DNSPod 72小时以上(以便全球DNS服务器均同步完成)。先按照Incapsula的要求设置好顶级域名的A记录,然后www域名CNAME解析到Incapsula的那个值,线路选择“国外”。

Continue reading “安全宝+WDCDN+Incapsula+DNSPod实现全球CDN加速”