同时运行多个版本的PHP并配置Composer:以Windows平台NGINX为例

前阵子开始考虑在不同PHP版本下测试MyBB的运行情况。由于我的工作机是Windows,为图方便,就使用了XAMPP作为服务套件。在XAMPP中,PHP是以模块形式支持的,配置可同时运行的、多个不同版本的PHP就变得很麻烦。相比之下,以CGI形式提供PHP支持(实际上好像应该是FastCGI),便很容易实现这一点。

我不太了解Apache的FastCGI怎么来做,搜索一下找到这篇文章“Apache, MySQL, PHP server on Windows with multiple, simultaneous PHP versions”。阅读之后,发现在配置FastCGI参数时还是很麻烦,比如php.ini文件位置、环境变量设置等等。而且这篇文章中是直接以FcgidWrapper调用了php-cgi.exe,给我的感觉是如果设置几个站点还好说,如果设置多个站点使用不同版本的PHP,就变得很复杂了。在不知道是否可以以HTTP方式直接接到PHP CGI监听的端口的前提下,我决定换用NGINX。既然是为了开发使用,也就不要在意性能了。

注意:这篇日志为我记录与获取方便而发布;内容中有很多处未涉及严格的考究和对选择的充分讨论,代码部分亦有存在纰漏的可能;请酌情参考,小心使用!

Continue reading “同时运行多个版本的PHP并配置Composer:以Windows平台NGINX为例”

有关Cloudflare的几条小提示

似乎算不上知识,就叫做提示吧。比较零散,又怕自己忘记,随手写在这里:

  • 关于SSL证书,非自定义的全局证书有两种(参考):
    • Universal:Common Name (CN)为sni.cloudflaressl.com,仅颁发给当前管理的根域名(如example.com)及泛域(如*.example.com),可参看证书Subject Alt Name项。
    • Universal (Shared):Common Name (CN)为sni123456.cloudflaressl.com,是在Cloudflare成为CA之前的旧版证书,与多个其他域名共享,可参看证书Subject Alt Name项。
  • 关于Cloudflare的CNAME Setup(参考):
    • 仅Business及Enterprise套餐(参见)。
    • 不要与域名的CNAME记录混淆。
    • 大概应该是这样的:对其他域名的CNAME记录指到Cloudflare管理的当前域名的子域名(包括www,不包括根域名)启用CNAME解析,同时启用其他域名别名的SSL证书(参考)。

Status-1047

一直没注意过,原来冒号还有这么多说法,仅在中文中便是如此。尝试了一下,腾讯QQ拼音输入法输入的冒号是全角冒号(其Unicode就是U+FF1A)。我原本想着,应该是GB18030的字符吧,不知道在其他中文输入法中是否一致;做Web开发时,也许应该同时查看一下GB2312GBK中的条目。看来UTF-8GB18030应该是不兼容的,尽管GB18030也用了可变长字符。有点意思。

关于Cloudflare一个奇怪的TXT类型DNS记录

最近在为某站(搜索引擎会帮助他们找到我,所以还是隐去名字吧)配置邮件服务,选择了Zoho的免费服务。配置好服务端后,也需要在DNS(使用了Cloudflare服务)添加相应的SPF/TXT记录。可是添加了SPF记录后,在Zoho总是无法通过验证。TL;DR在最后。

Continue reading “关于Cloudflare一个奇怪的TXT类型DNS记录”

Web站点和MySQL数据库的自动与远程备份:auto-backup w/ mysqldump and rsync on Ubuntu

起先给这篇日志起的名是《WordPress站点和数据库的自动、异地备份:……》,虽然前后也修改了几次,但还是读起来不够理想。再想了一下,实际上这篇日志内容不止适用于WordPress站点,甚至不止适用于Web站点,也可以当做其他重要资源的备份参考。还有呢,这篇日志是在《网络服务配置笔记:……》的配置基础上完成的,很多备份方式的理念和脚本也是根据那篇日志里所述内容来决定的。哦,对了,文末也曾说大概应该会写的内容还包括“SSL证书定期自动更新”,后来查到如果Certbot是采用官方的软件包系统安装的话,在一些系统上会默认设置定期自动更新SSL证书的计划任务,当然这也都是可以自己添加cron job来实现的。

注意:这篇日志为我记录与获取方便而发布;内容中有很多处未涉及严格的考究和对选择的充分讨论,代码部分亦有存在纰漏的可能;请酌情参考,小心使用!

那么,结合在《网络服务配置笔记》中已经完成的工作,先讲讲这篇日志里所记录的备份工作的背景:

Continue reading “Web站点和MySQL数据库的自动与远程备份:auto-backup w/ mysqldump and rsync on Ubuntu”