PhpStorm分析xdebug profiling数据

一套新购WordPress付费主题,安装后立刻开始『自我审查』删除了一切前端googleapi请求,本地测试一切良好,完善内容后测试站发布于阿里云。

几日后,发现测试站突然变慢,TTFB超过5秒,curl多次测试统计后确定均值约5300ms,且方差很小。

怀疑后端超时,服务器端开启xdebug profiling,刷出一枚cachegrind.out,下载本地后发现MacOS下的qcachegrind太难用了。

猛然想起最新版PhpStorm可以分析profiling数据,沐浴焚香后祭出PhpStorm开始分析快照,数秒后水落石出,卡在curl_exec上:

故障很简单,此主题框架每周一次意欲缓存google fonts列表,本地无墙也无妨,但上线后不出七日,服务器端curl请求googleapis必被墙,超时5秒由此而生。

手起刀落,安逸如初。

来一枚免费的SSL证书

Let’s Encrypt 推出免费SSL证书已有些时日,恰今日无事,按官网文档推荐的 certbot 开始配置部署,文档清新。

执行 certbot-auto 时被告知 Apache 配置中未发现任何域名。既然反复标榜 90 天过期是为培养用户养成 automatic renewal 的好习惯,姑且相信certbot标榜”自动化” 是可能的。google后方知 certbot-auto 无法从 vhost.conf 中分离域名,需要炸成 domain.com.conf 文件。

重新来过,高歌猛进拍回车看到 Congratulations,重启 httpd 服务后 Chrome 告知Invalid response. 挠头,说好的自动化呢?

查日志,翻翻 conf.d 目录终于悟出问题,certbot 修改了旧 domain.com.conf,301所有 http 请求至 https,这没有问题。

certbot 生成了新的 domain-le-ssl.conf,文件内有

<IfModule mod_ssl.c>
...
</IfModule>

Apache 加载 domain-le-ssl.conf 时,尚未加载 ssl.conf…故此时 mod_ssl 尚未启用。遂怒删两行 IfModule,再重启 httpd,终得见绿锁一枚。

想起以前每次配SSL证书每次跟着Godaddy老掉牙的文档溜,手累脑不累。这清新的文档辅以自动化配置,学疏才浅只好连入双坑。

周末好心情被这俩坑毁了,不过看到免费的绿锁,心情又稍稍好了一些。

古语有云:

Free is only free if your time is worth nothing.

 

Hello world!

很多年不碰 wordpress,突然发现这个模板引了 google font 的 Noto 字体。

记得 360前端公共库 (useso) 中有 google font 的国内反向代理,前往发现 useso 已经停止服务。

感慨完时间好快,还是手起指落阉掉这站外字体引用。