今天 Ubuntu 20.04 LTS 发布了,因此在一个闲置的云服务器上尝尝鲜,顺便换掉让人不爽的阿里云魔改版系统。
源码编译 PHP-FPM 7.4.4
如何编译 PHP-FPM 其实很多人的博客都有,在此只是做一个记录,方便自己查找。
这里的编译选项应该是最全的了。由于都是套路,所以也不做解释了。只提两点:
- 如果 PathInfo 编译错误,是内存不足的原因。
- 要安装 snmp,才能使用 snmp 扩展,否则 PHP 程序会报错。(即使没有调用 snmp 函数)
近期对博客的更改日志
全部链接完成到 josephcz.xyz 新域名的切换
在之前,本站仅仅做了 josephcz.win 和 josephcz.xyz 两个域名的双解析,并没有进行跳转。现在本站将 josephcz.win 永久重定向到新域名 josephcz.xyz。同时,清理了所有代码中的老域名配置和链接,全部更换到了新域名。
全部服务器 SSL 部署方式切换到 acme.sh 并启用通配符证书
在 2 月,本站在部署邮件反向代理服务器是试用了 acme.sh。由于 certbot 申请泛域名证书时比较麻烦,需要手动设置 DNS TXT 记录,因此切换到可以通过 API 自动设置 DNS TXT 记录的 acme.sh。同时,从 4 月 1 日起,在所有服务器上开始使用通配符证书。
主域名加入 HSTS Preload List
本站在一年前启用了 HSTS,经过一年的测试,认为启用 HSTS 并将 HTTP 请求重定向到 HTTPS 请求基本没有兼容性问题。现在使用通配符证书,也意味着不支持 SNI 的浏览器也可正常访问本网站。因此,本站将 HTTP 链接永久重定向到了 HTTPS 链接,并将 HTST 有效期设置为了 1 年。考虑到本站已经进入稳定运行阶段,各个子站点也部署在支持 HTTPS 的服务器上,因此在 HTST 标头中加入了 includeSubDomains
选项。
同时,本站现在已经加入了 HSTS Preload List,并出现在了Chromium 源码中。
在 Nginx 上配置 SSL 加密的 SMTPS, IMAPS 和 POP3S 反向代理
准备工作与说明
本文是针对使用第三方企业邮箱(域名邮箱)的,如果您有独立的邮件服务器,不适用本文。
您需要一个具有 root 权限的 VPS 或云服务器。
我们假定您已经做好 DNS 的 MX 记录解析,第三方企业邮箱已经运行正常,且将 smtp/imap/pop3.<yourdomain>.<yourtld>
解析到您正在操作的服务器上。
本文使用的是 Ubuntu 操作系统,其他系统的操作可能有所不同。
使用 acme.sh 申请 SSL 证书
首先下载 acme.sh :
1 | curl https://get.acme.sh | sh |
随后申请证书。笔者使用的是 DNSPod 作为 DNS 服务器,为了进行 DNS 验证,需要获取 DNSPod 的 API 访问密钥。
Google Chrome 71~80 版本设置 Flash 白名单的方法
现在 Flash 已经不在安全并即将被弃用,但是仍然有不少网站还在使用 Flash,而且有时也因为现实原因不得不使用这些使用 Flash 的网站。每次去启用 Flash 就很麻烦,直接允许所有 Flash 又不安全,因此设置白名单便是一个折衷的办法。针对白名单内的网站,Flash 会自动启用;其他网站则自动禁用 Flash。
尽管 Google 提供了组策略管理模板,但是由于 Windows 10 Home 版本不支持组策略,因此使用注册表的方式修改白名单。
储存白名单的注册表项储存在 HKEY_CURRENT_USER\Software\Policies\Google\Chrome\PluginsAllowedForUrls
下,如果没有此项,则新建它。
在该项下,建立“字符串值”,名称为从一开始的整数数字。值为形如 [*.]example.com
形式的域名正则表达式。重启 Chrome,打开 chrome://settings/content/flash,即可看到添加的白名单。即使在该页禁止运行 Flash,白名单依然有效(即名单内网站依然会启用 Flash)。