没有不值得去解决的问题,也没有不值得去学习的技术!

年度归档: 2026 年

  • 在 Ubuntu 26.04 + ThinkPad T570 环境下,原本长期稳定运行的 Samsung VGA 副屏突然出现黑屏。排查过程中发现,Ubuntu、GNOME/Mutter、DRM 与 EDID 均能正常识别副屏,但实际视频信号无法稳定维持;降低到 1024×768 后也只能短暂恢复并伴随闪烁。通过 i915 hotplug 日志、显示器自检、分辨率切换、接口重插、Emergency Reset、monitors.xml 与 gdctl 等手段逐步排除了普通软件配置问题,最终将故障范围集中到 HDMI→VGA 转换链路,并决定改用 USB-C→VGA 一体线进行下一阶段交叉验证。

  • 在博客广告中偶然接触 Adsterra 后,我实际注册 Publisher 账号,为中文站和英文站分别创建 Native Banner,并通过 WPCode 按域名将广告插入文章末尾。首次上线时,Adsterra 的 invoke.js 持续返回 HTTP 403 Forbidden,但 WordPress、WPCode、W3 Total Cache 和页面 HTML 均已确认正常。第二天关闭本地 VPN 后,请求立即恢复为 HTTP 200,Native Banner 成功展示并产生第一批收入。本文完整记录从平台注册、双域名配置、WordPress 接入、403 排查,到 VPN 网络过滤、初始 CPM 和广告内容质量评估的全过程,并讨论一个广告平台是否值得长期保留,最终应由真实收益、维护成本和用户体验共同决定。

  • 本文记录一次 WordPress 双 CDN 架构下的 Query String 缓存优化实战。中文站通过 EdgeOne 自定义 Cache Key 与回源请求参数设置,让 canonical 文章 URL 的不同查询参数共用缓存,并在 MISS 回源时删除 Query String;英文站则通过 Cloudflare URL Rewrite Rule 实现相同目标。整个过程结合 HIT/MISS、Age、301、CF-Ray 与 Nginx access log 进行实际验证,最终将规则收敛为仅优化 /YYYY/MM/DD/ID/ 形式的标准文章 URL,在降低随机参数缓存穿透风险的同时保持 CDN 配置简单、清晰、易维护。

  • 在通过 EdgeOne 屏蔽异常 Sogou UA 流量、解决 WordPress 502 后,阿里云 ECS 仍然偶发 CPU 95%~100% 告警。进一步结合 PHP-FPM Slow Log、Nginx 请求日志和 W3 Total Cache 实测发现,大量带 Query String 的前台请求会导致 W3TC Disk: Enhanced 页面缓存无法复用,使请求重新进入 PHP-FPM,完整执行 Gutenberg、Polylang、Post Views Counter、Redis Object Cache 和数据库查询。正常 URL 第二次请求 TTFB 仅约 0.1 秒,而带参数 URL 每次仍需约 7~11 秒。最终决定不逐个封禁参数,也暂不升级服务器或修改 W3TC 内部逻辑,而是在 EdgeOne 与 Cloudflare CDN 层进行 Query String 缓存键和回源 URL 规范化,从根源减少动态参数造成的缓存穿透。

  • 在一次 WordPress 502 故障排查结束后,我继续完善阿里云 ECS 的主机监控与报警体系。排查发现原有云监控 Agent 2.1.56 已停止运行,导致 CPU、内存、磁盘等操作系统级指标长期没有数据。随后通过传统云监控「主机监控」将 Agent 升级至 4.0.0,恢复 CPU、内存、Load、磁盘、网络和公网带宽等监控,并分别为 CPU、内存、磁盘及公网流出带宽设置 Info、Warn、Critical 三级报警。结合恢复后的实际监控数据,现阶段 1 核 2G ECS 与 2 Mbps 公网带宽仍有明显余量,因此暂不升级服务器,而是先通过持续监控积累长期运行基线,让服务器运维从“故障后排查”转向“异常前预警”。

  • 一次 WordPress 生产站间歇性 502 故障排查记录。阿里云 ECS 一度出现 CPU 100%、Load 超过 9、PHP-FPM Socket 队列达到 510/511,大量请求返回 499 和 502。通过分析 Nginx 日志发现,最近 20000 条请求中有 18455 条携带 Sogou web spider/4.0 User-Agent,并以每分钟约 500~700 次的频率持续遍历网站。随后在 EdgeOne 中通过 *Sogou* User-Agent 规则进行边缘拦截,Sogou UA 请求降至 0,PHP-FPM 队列恢复为 0/511,CPU 空闲率最高恢复到 97%,后台连续请求全部返回 HTTP 200。此次排查说明,服务器出现性能瓶颈时,不应急于升级配置,应先确认异常流量和真正的资源消耗来源。

  • 在 WordPress 历史文章迁移过程中,将原有流程图内容转换为 MerPress Mermaid 区块后,前台出现 Syntax error in text,并显示 Mermaid 11.9.0。最初将错误的 流程图 TD 修改为 flowchart TD 后问题仍未解决,最终发现关键在于节点文本写法。将 A[节点文本] 统一调整为 A[“节点文本”] 后,包含 test()、main()、go test() 以及中英文混合内容的流程图恢复正常渲染。本文记录完整排查过程,并总结适用于 WordPress 历史内容迁移的 Mermaid 节点编写与验收规则。

  • 2026 年 6 月 25 日,我通过 BeWild 购买了 ChatGPT Plus 3 个月订单。一个月后的 7 月 25 日,恰逢第二个月续订节点,ChatGPT 却突然出现请求失败和登录 500,让我一度怀疑 BeWild 自动续订出了问题。经过 BeWild 客服、OpenAI Status、订阅状态和官方账单多方核对,最终确认第二个月已经成功续订至 8 月 25 日,而且续订完成后无需再手动操作“已订阅续费”支付订单。期间 OpenAI 官方确实发生服务故障,从首次发现异常到状态页恢复正常约持续 3 个小时。本文完整记录这次续订、故障排查和验证过程,同时保留一个尚无法确认的细节:故障刚发生时,BeWild 是否已经完成续订。目前第二个月已经实测成功,第三个月则继续等待 8 月 25 日实际验证。

  • 本文记录了为 WordPress 技术博客配置 Google AdSense 欧洲 GDPR 与美国州级隐私法规消息的完整过程,重点梳理了 Google CMP“未来网站”选项、AdSense 网站与语言子域名的关系、Privacy Policy 页面的职责,以及“同意”“管理选项”“不同意”和“关闭(不同意)”四项设置。文章还记录了批量开启并逐国调整“不同意”按钮、为欧洲消息添加中英文版本,以及在广告收益和用户选择权之间作出取舍的实践经验。

  • 收到包含 8 个中文文章 URL 的内容整改清单后,我没有直接删除 WordPress 文章,而是通过 MU Plugin 保留文章发布状态和系列标题,同时让指定中文页面真实返回 HTTP 404,并限制 REST API、RSS 与 Sitemap 继续输出正文。随后结合 W3 Total Cache、EdgeOne、Cloudflare 和 Polylang 完成缓存排查,最终仅下线清单中的中文文章,对应英文译文继续正常访问。


👨‍💻 个人品牌

王世强|PHP / Go 技术顾问

15+ 年 Web 后端开发经验,专注于系统维护、架构优化、性能调优及 Linux 运维。

持续运营技术博客 10+ 年,累计发布 1000+ 篇原创技术文章。

为创业团队、中小企业及独立开发者提供长期技术支持与远程合作服务。

👉 关于我 & 合作

.env (14) 404 (13) add (16) AI 翻译 (11) Apache (13) Array (19) Cache (13) CentOS (23) ChatGPT Plus (12) chrome (19) Cloudflare (26) composer (42) composer.json (22) composer install (13) composer update (14) console (16) Container (25) curl (15) delete (31) Docker (32) Dockerfile (15) ECS (12) EdgeOne (23) environment variable (19) error (24) Failed (13) file (15) filter (20) function (13) Git (27) GitHub (17) Gitlab (15) Go (38) Google AdSense (21) GraphQL (24) GraphQL API (14) Gutenberg (27) http (21) https (21) Installation (12) Interface (19) Jquery (13) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (19) Migrate (13) Module (17) Multilingual (12) MySQL (76) MySQL 5.7 (21) Nginx (56) normalize.css (23) OKX (15) OneinStack (17) PHP (67) php-fpm (14) php.ini (24) PHP 7.1.12 (22) PHP 7.4 (26) phpmyadmin (15) PhpStorm (24) Polylang (57) postman (18) Query (17) queue (16) Rancher (24) Redis (47) response (13) RESTful (27) RESTful API (23) Shell (13) Shopify (19) SlyTranslate (17) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (19) Ubuntu (39) update (20) VPN (17) VS Code (13) W3 Total Cache (33) Windows 10 (46) WireGuard (26) WordPress (109) WordPress 多语言 (13) WPCode (20) Wstunnel (13) Yii (40) Yii 2 (70) Yii 2.0 (51) 命令行 (13) 技术博客 (15) 数据库迁移 (16) 浏览器 (14) 阿里云 (19)

2026 年 8 月
 12
3456789
10111213141516
17181920212223
24252627282930
31