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

  • A Tour of Go 多语言翻译项目:将生产 Run / Format 切换到 ZgoCloud 执行节点

    A Tour of Go 多语言翻译项目:将生产 Run / Format 切换到 ZgoCloud 执行节点

    A Tour of Go 新的 ZgoCloud Playground 执行节点搭建完成后,本文继续记录生产端 Run / Format 的实际切换过程:从代码审计、统一 Playground 基础地址、生产与本地运行模式隔离,到 release manifest、自动部署脚本和生产发布同步更新。上线后还遇到了 EdgeOne 缓存旧 /tour/script.js,导致浏览器继续请求旧 /_/compile 的问题;定向清除缓存后,Run 与 Format 最终成功切换到 ZgoCloud,并通过桌面浏览器和手机真实网络环境验收。

  • A Tour of Go 多语言翻译项目:为 Playground 搭建独立的 ZgoCloud 执行代理

    A Tour of Go 多语言翻译项目:为 Playground 搭建独立的 ZgoCloud 执行代理

    A Tour of Go 简体中文版上线后,生产环境访问 Go 官方 Playground 偶发出现 TLS 握手超时。本文记录如何在现有 ZgoCloud 服务器上新增独立 Playground 执行节点,通过 Nginx、HTTPS 8443、CORS 与固定接口转发,将 /compile、/fmt 请求直接发送至 play.golang.org,同时保持原有网络服务不受影响,并完成连续真实编译、格式化和安全边界验收。

  • Clash Verge 国内直连突然失效:从 PR_END_OF_FILE_ERROR 到更新 GeoData 后恢复的完整排查

    Clash Verge 国内直连突然失效:从 PR_END_OF_FILE_ERROR 到更新 GeoData 后恢复的完整排查

    这次访问 admin.shuijingwanwq.com 时,Firefox 突然出现 PR_END_OF_FILE_ERROR。排查发现服务器端 Nginx、SSL、WordPress 以及公网 443 端口均正常,真正异常的是 Clash Verge / Mihomo 分流链路:本应国内直连的域名未命中预期规则,最终落入 MATCH → Proxy 并连接超时。由于现有“国内直连、国外代理”规则此前长期正常运行,没有为单个域名增加强制 DIRECT,而是更新 GeoData 并重启 Mihomo 内核,随后后台恢复正常。本文完整记录从浏览器报错、Clash 日志定位、服务器与源站直连验证,到 GeoData 更新恢复的排查过程,并说明为什么目前更适合将根因判断为 GeoData 或 Mihomo 规则运行状态异常,而不是直接认定规则设计错误或 GeoData 文件损坏。

  • A Tour of Go 多语言翻译项目:从一次 203/EXEC 故障到生产自动部署脚本落地

    A Tour of Go 多语言翻译项目:从一次 203/EXEC 故障到生产自动部署脚本落地

    本文记录 A Tour of Go 多语言翻译项目一次生产发布故障如何推动自动部署流程落地。一次看似普通的手机端 CSS 发布,因为 release 目录权限异常导致 go-tour.service 出现 status=203/EXEC,生产站点一度返回 502。问题恢复后,项目开始整理 production 自动部署脚本,并在第一版过度复杂、达到 722 行后主动做减法式重构,最终收敛为约 494 行,只保留 staging、权限归一化、SHA-256、原子切换、连续健康检查和失败回滚等核心机制。首次真实部署中还观察到 systemd 已显示 active、但 localhost 首次仍为 HTTP 000 的现象,进一步验证了连续应用层健康检查的必要性。

  • A Tour of Go 多语言翻译项目:修复手机端首页顶栏标题换行,并完成真机验证

    A Tour of Go 多语言翻译项目:修复手机端首页顶栏标题换行,并完成真机验证

    本文记录 A Tour of Go 多语言翻译项目一次手机端首页顶栏标题换行问题的完整处理过程。从真实手机发现“A Tour of Go 多语言翻译项目”最后一个字符被挤到第二行,到定位移动端 CSS、调整 Logo 间距与标题字号、在 360px 宽度下验证,再到评估 320px 极窄屏边界、发布生产、处理 EdgeOne 缓存并完成真机最终验收。整个过程也进一步明确了项目在响应式设计中的原则:优先解决真实设备上的实际问题,不过度针对极端宽度堆叠特殊规则,并为未来多语言扩展保留足够简单、可维护的实现。

  • GLM-5.2 整篇翻译返回 400:一次内容安全误拦截的逐步定位与恢复记录

    GLM-5.2 整篇翻译返回 400:一次内容安全误拦截的逐步定位与恢复记录

    本文记录了一次 WordPress 历史文章英文覆盖翻译过程中遇到的 HTTP 400 内容安全拦截问题。排查最初从网络访问相关技术术语入手,但连续进行中文名称和中性表达改写后仍然失败。随后转向文章中的国家和地区流量统计内容,通过逐步概括相关表达并重新建立当前中文源基线,最终成功完成 GLM-5.2 英文覆盖翻译。文章同时总结了内容安全错误的定位思路、WordPress 图片 ALT 对翻译输入的影响,以及历史文章处理中优先采用等义改写而非直接删除内容的实践原则。

  • A Tour of Go 中文站上线后:补齐 robots.txt、Sitemap,并完成五大搜索引擎提交

    A Tour of Go 中文站上线后:补齐 robots.txt、Sitemap,并完成五大搜索引擎提交

    A Tour of Go 简体中文站正式上线后,为完善搜索引擎抓取与收录能力,补齐了 robots.txt 与 sitemap.xml,Sitemap 共包含首页和 103 个课程页面,总计 104 个规范 URL。随后完成 Google、Bing、360、百度和搜狗五个平台的站点验证或资源提交,并复用了此前 en.shuijingwanwq.com 的搜索引擎接入经验。过程中还通过 Nginx 精确返回百度、搜狗验证文件,避免修改 Tour 应用本身,同时清理了 Nginx 新版本下旧 HTTP/2 语法及 OCSP Stapling 配置警告。最终五个平台均完成当前阶段接入,也进一步明确了后续开发轻量级搜索引擎提交工具的方向。

  • A Tour of Go 多语言翻译项目:接入 Google Analytics 与百度统计,从 systemd 注入到 EdgeOne 与真实上报验证

    A Tour of Go 多语言翻译项目:接入 Google Analytics 与百度统计,从 systemd 注入到 EdgeOne 与真实上报验证

    为 A Tour of Go 简体中文生产站接入 Google Analytics 4 与百度统计。本文记录从审计现有 TOUR_ANALYTICS 注入机制、补齐首页统计入口,到使用 systemd EnvironmentFile 管理生产统计代码、重新生成并发布 production release,以及处理 EdgeOne 旧 HTML 缓存的完整过程。最终通过源站、公网页面和浏览器网络请求三层验证,确认 GA4 g/collect 返回 HTTP 204、百度统计 hm.gif 返回 HTTP 200,两套统计系统均已完成真实数据上报。

  • A Tour of Go 多语言翻译项目正式上线:从项目首页、公共 Footer 到生产发布元数据的完整收尾

    A Tour of Go 多语言翻译项目正式上线:从项目首页、公共 Footer 到生产发布元数据的完整收尾

    A Tour of Go 多语言翻译项目在完成 103 个简体中文课程页面后,进一步补齐项目首页、Logo/favicon、公共 Footer、备案信息、GitHub 与开发记录互链,并完成正式 production bundle 构建、权限规范、独立实例验收、原子切换、回滚保护及公网验证。发布过程中还排查了 EdgeOne 新旧缓存混用问题,并重新设计了 site-metadata.json 的职责,将开发态元数据与生产发布元数据彻底分离,避免“发布后回写发布时间”形成循环。

  • A Tour of Go 多语言翻译项目:从 go-tour 到 go-dev,完成 EdgeOne、Nginx 与 HTTPS 生产域名迁移

    A Tour of Go 多语言翻译项目:从 go-tour 到 go-dev,完成 EdgeOne、Nginx 与 HTTPS 生产域名迁移

    A Tour of Go 简体中文站正式上线后,我发现原生产域名 go-tour.shuijingwanwq.com 与既有 /tour/ 路径存在语义重复。此前曾评估直接移除 /tour/,但由于涉及路由、静态资源、模板和既有验证链路,最终放弃这一方案,改为将生产域名迁移至更具扩展性的 go-dev.shuijingwanwq.com。本文完整记录 Cloudflare DNS、腾讯云 EdgeOne、HTTPS、同路径 301、OneinStack、Nginx、Let’s Encrypt、静态资源 404 修正及旧源站清理过程,并通过新页面 200、静态资源 200、旧域名 301 完成最终验收。

👨‍💻 个人品牌

王世强|PHP / Go 技术顾问

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

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

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

👉 关于我 & 合作

.env (14) 404 (13) add (16) AI 翻译 (18) Apache (13) Array (19) Cache (13) CentOS (23) 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 (18) Gitlab (15) GLM-5.2 (20) Go (45) Google AdSense (22) GraphQL (24) GraphQL API (14) Gutenberg (30) http (21) https (21) Interface (19) Jquery (13) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (21) Migrate (13) Module (17) MySQL (78) MySQL 5.7 (21) Nginx (56) Node.js (12) normalize.css (28) OKX (15) OneinStack (17) PHP (67) php-fpm (17) 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 (48) response (13) RESTful (27) RESTful API (23) rules (12) Shell (13) Shopify (19) SlyTranslate (18) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (20) Ubuntu (40) update (20) VPN (17) VS Code (13) W3 Total Cache (35) Windows 10 (46) WireGuard (26) WordPress (117) WordPress 多语言 (13) WPCode (23) Wstunnel (13) Yii (40) Yii 2 (70) Yii 2.0 (51) 命令行 (13) 技术博客 (15) 数据库迁移 (16) 浏览器 (14) 阿里云 (19)

2026 年 8 月
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Most Viewed Posts

  1. 从 LetsVPN 停用至自建 WireGuard VPN 全流程复盘(附避坑指南) (7,571)
  2. 使用中国大陆手机号登录 Telegram,弹出 SMS Fee 且支付选项不支持,购买 Premium 后短信验证码未收到的完整解决流程 (5,383)
  3. ZgoCloud + Wstunnel + WireGuard 提速 4 倍,Clash Verge Rev 自动分流与 443 端口防封实战 (4,877)
  4. WireGuard 国内直连+国外走隧道 配置踩坑与完美解决(实测可用) (3,914)
  5. WireGuard VPN 配置优化:国内网站直连,国外流量走VPN(实测有效) (2,102)
  6. 基于 yiisoft/yii2-app-advanced,在 GitHub 上新建仓库 yii2-app-advanced,新建接口应用(实现 RESTful 风格的 Web Service 服务的 API),新建api目录、配置和环境、测试、Vagrant等的支持 (1,340)
  7. 一直收到 Huobi.info 的账户管理费收取通知,决定提取出剩余的资产 (1,321)
  8. 基于 yiisoft/yii2-app-advanced,在 GitHub 上新建仓库 yii2-app-advanced,新建接口应用(实现 RESTful 风格的 Web Service 服务的 API),在 api 的 tests 目录中准备用户相关操作的一些自动化测试的样例(API 测试),确保应用程序在改变或增加新的功能时不会影响现有的功能 (1,309)
  9. 基于 yiisoft/yii2-app-advanced,在 GitHub 上新建仓库 yii2-app-advanced,新建接口应用(实现 RESTful 风格的 Web Service 服务的 API),实现模型分层:数据层、逻辑层,明确公共目录、应用、模块的继承、引用关系 (1,281)
  10. 基于 yiisoft/yii2-app-advanced,在 GitHub 上新建仓库 yii2-app-advanced,新建接口应用(实现 RESTful 风格的 Web Service 服务的 API),实现 RESTful Web 服务,支持国际化(动态地设置目标语言,默认为简体中文) (1,276)