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

分类: HTTP服务器

  • 本文记录在 Alibaba Cloud Linux 3 与 OneinStack 环境中,将 Nginx 从 1.24.0 升级到 1.30.4,并将其静态编译使用的 OpenSSL 从 1.1.1t 升级到 3.5.7 的完整过程。操作采用旁路编译、生产配置预检、完整备份、短暂停机切换和自动回滚方案,期间解决了 GitHub 下载失败、Perl 模块缺失、Python 3.6 语法不兼容以及旧版 HTTP/2 配置警告等问题。升级后,中文站、英文站、管理子域、WordPress REST API、PHP-FPM 和源站 HTTP/2 均通过验证。

  • 本文记录了将 WordPress 英文站从 `www` 主域名下的 `/en/` 路径迁移到 `en.shuijingwanwq.com` 子域名的完整实践。由于站点原有数千条标签 slug 转换、旧标签合并和专题重定向规则,不能简单使用一条通用 rewrite。最终通过“历史路径映射、最终域名转换、普通 `/en/` 兜底迁移”三层逻辑,实现旧英文标签和专题一次 301 到达最终英文地址,同时保留中文主域名规则与查询参数,并将 `www` 和 `en` 子域名后续产生的 301 规则分开维护。

  • WordPress 站点配置 Nginx 全局限流后,后台编辑文章时出现标签保存失败及 429 错误。经排查发现,Gutenberg 编辑器处理标签时会频繁调用 REST API,导致触发了每秒 6 次的严格限流阈值。最终通过将 Nginx 限流速率调升至 30 次/秒并增加突发缓冲,消除了 429 拦截,恢复了标签功能的正常保存,同时保留了基本的安全防护能力。

  • 本文记录了在1核2G阿里云ECS服务器上解决WordPress单日126次504超时的全过程。故障根源在于18000个标签页导致并发过高,通过禁用WP-CRON并改用系统定时任务、配置Nginx限流拦截恶意爬虫、调整W3TC与Redis缓存策略以绕过数据库查询,实现了从系统机制到缓存层的全面调优。该方案在不影响SEO和数据完整性的前提下,成功压榨服务器性能并解决了高负载与超时问题。

  • 本文介绍了如何利用 Post Views Counter 插件,在不修改主题核心代码的前提下,将 Nginx 日志中的历史访问数据批量导入 WordPress,并实现后续浏览量的自动统计与中文前端显示。文章详细阐述了从日志提取数据、生成并导入 SQL 文件的具体步骤,重点分析了因插件缓存机制和数据类型(type=4)导致的显示异常及排查方法,最终通过插件设置自定义了中文标签和页头显示位置,实现了准确且无需维护的浏览量统计功能。

  • 个人博客出现 504 Gateway Timeout,排查发现服务器因恶意扫描和分布式爬虫导致严重过载。内存被过多的 PHP-FPM 进程耗尽,引发负载飙升。通过降低 PHP-FPM 进程数以适配硬件配置,在 Nginx 层面封禁恶意扫描 IP 及爬虫 IP 段,并重启 ECS 清理积压进程,最终解决了资源耗尽问题,恢复了服务正常响应。

  • 文章指出 /page-editor/ 路径访问正常,但访问 /page-editor/mobile 路径时返回 404 错误。经排查,该目录仅包含 index.html 文件,且 Nginx 配置未正确匹配子路径请求。解决方案是将 Nginx 配置修改为正则匹配或更宽泛的路径匹配,以覆盖前缀及其子路径。修改后,/page-editor/mobile 路径请求响应 200,问题得到解决。

  • 本文介绍了 Yii2 高级模板的目录权限设置流程,旨在解决 Web 服务器用户对项目目录的访问控制问题。操作过程包括确认 Web 服务器用户,将项目目录所有者设置为 root,并设置基础目录权限为 755。同时,将运行时目录所有者赋予 Web 服务器用户,并对 Web 可访问目录、运行时目录、vendor 及 console 目录分别设置相应的读写权限,最后通过执行 ./init 命令完成环境配置文件的初始化。

  • 本文记录了在 CentOS Stream 9 系统上基于 LNMP 一键安装包部署环境的过程。通过安装 EPEL 仓库解决 screen 命令缺失问题,随后成功部署 LNMP 稳定版并配置虚拟主机。此外,文章还介绍了安装 Git、配置服务器与 Gitee 的 SSH 密钥,以及在项目目录中初始化仓库和拉取代码的具体操作步骤。

  • 遇到Nginx报错提示unknown directive ssl,通过运行命令检查版本输出,确认已包含–with-http_ssl模块且支持SSL。经排查发现问题源于配置文件编辑细节,修正文件内容后重新执行nginx -s reload命令,服务不再报错并成功加载配置,解决了该指令无法识别的问题。

👨‍💻 个人品牌

王世强|PHP / Go 技术顾问

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

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

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

👉 关于我 & 合作

.env (14) add (16) AI 翻译 (30) Apache (13) Array (19) A Tour of Go (67) Cache (13) CentOS (23) ChatGPT (20) ChatGPT Plus (15) chrome (19) Cloudflare (33) Codex (22) composer (42) composer.json (22) composer install (13) composer update (14) console (16) Container (25) curl (16) delete (31) Docker (32) Dockerfile (15) EdgeOne (33) environment variable (19) error (24) file (15) filter (20) Git (27) GitHub (23) Gitlab (15) GLM-5.2 (26) Go (61) go-tour-i18n (14) Google AdSense (29) Go 语言 (24) GraphQL (24) GraphQL API (14) Gutenberg (34) http (21) https (22) Interface (19) Jquery (13) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (22) Migrate (13) Module (17) MySQL (78) MySQL 5.7 (22) Nginx (63) normalize.css (28) OKX (15) OneinStack (21) PHP (67) php-fpm (19) php.ini (24) PHP 7.1.12 (22) PHP 7.4 (26) phpmyadmin (15) PhpStorm (24) Polylang (58) postman (18) Query (17) queue (16) Rancher (24) Redis (50) RESTful (27) RESTful API (23) Shopify (19) SlyTranslate (20) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (20) Ubuntu (40) update (20) VPN (17) W3 Total Cache (38) Windows 10 (46) WireGuard (28) WordPress (132) WordPress 多语言 (13) WPCode (23) Wstunnel (15) Yii (40) Yii 2 (70) Yii 2.0 (51) ZgoCloud (13) 多语言网站 (13) 多语言翻译 (35) 技术博客 (15) 故障排查 (15) 数据库迁移 (16) 浏览器 (14) 阿里云 (19)

2026 年 9 月
 123456
78910111213
14151617181920
21222324252627
282930