直接给结论:强烈不推荐在 CentOS 8 及更高版本(包括 Stream)上部署生产环境的 WordPress。
如果非要选一个,目前最稳妥、兼容性最好的选择是 CentOS 7(尽管它已停止维护,但生态依然成熟),或者更优解是转向 AlmaLinux 8/9 或 Rocky Linux 8/9。
下面从技术栈兼容、环境配置难度和长期维护三个维度详细拆解原因:
1. 为什么 CentOS 8 / Stream 是个坑?
- 生命周期已结束:CentOS 8 已于 2021 年底停止支持。这意味着你无法再获得安全补丁。对于 WordPress 这种高频被攻击的目标,使用无安全更新的操作系统是极大的安全隐患。
- Stream 的不稳定性:CentOS Stream 定位为“滚动预览版”,它是 RHEL 的上游。虽然功能新,但它不是稳定版。对于追求稳定性的 Web 服务来说,引入上游的潜在 bug 是不必要的风险。
- 软件源问题:随着官方源的下线,很多第三方 YUM 源(如某些旧版的 PHP 扩展、特定数据库插件)可能不再适配 CentOS 8/Stream,导致
yum install时依赖冲突频发。
2. 为什么 CentOS 7 依然是很多人的“默认选项”?
- 生态极度成熟:市面上绝大多数一键安装包(如 BT Panel, OneinStack, LNMP)、教程、Docker 镜像都是基于 CentOS 7 开发的。你遇到的任何问题,Google 出来的解决方案几乎都指向 CentOS 7。
- PHP 5.x/7.x 兼容性:虽然现代 WordPress 推荐 PHP 7.4+ 甚至 8.0+,但在 CentOS 7 上通过 Remi 源或 SCL 安装高版本 PHP 已经非常成熟,不会像在新系统上那样需要折腾大量编译参数。
- 注意:CentOS 7 已于 2024 年 6 月 30 日正式 EOL(End of Life)。如果你现在新建服务器,不建议首选 CentOS 7,除非你有特殊的遗留系统依赖。
3. 当前最佳实践推荐
✅ 首选:AlmaLinux 8 或 Rocky Linux 8/9
这是由 CentOS 社区主导的新项目,与 RHEL 1:1 二进制兼容,填补了 CentOS 停更后的空白。
- 优势:
- 完全兼容 CentOS 7 时代的软件包管理习惯(YUM/DNF)。
- 拥有活跃的社区支持和稳定的更新周期。
- 对 PHP 8.x、MySQL 8.0/MariaDB 10.5+ 等现代组件支持更好。
- 操作建议:安装 AlmaLinux 8 或 9,然后使用标准的 LEMP/LAMP 栈安装脚本。
✅ 次选:Ubuntu 20.04 LTS / 22.04 LTS
在国内云服务器市场,Ubuntu 的用户基数非常大。
- 优势:
- 文档丰富度甚至超过 CentOS。
- APT 包管理器体验优于 YUM。
- 云厂商镜像优化做得很好。
- 劣势:命令习惯不同(apt vs yum),部分老旧中文教程不适用。
✅ 进阶方案:Docker + Debian/Ubuntu 基础镜像
如果你希望环境隔离、便于迁移和备份,不要直接在宿主机 OS 上安装 WordPress 依赖。
- 使用 Docker Compose 部署 WordPress + MySQL + Redis。
- 宿主服务器可以使用任何轻量级 Linux(如 Alpine, Debian Slim),只负责运行容器。
- 优点:WordPress 环境完全独立,重装系统不影响网站数据;升级 PHP 只需换镜像标签,无需修改系统库。
4. 实际部署建议步骤(以 AlmaLinux 8 为例)
- 初始化系统:
sudo dnf update -y sudo setenforce 0 && sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config - 安装 Nginx + PHP-FPM + MariaDB:
推荐使用 OneinStack 或 Lnmp.org 的一键安装包,它们对 AlmaLinux/Rocky 的支持越来越好。如果手动安装,确保启用 EPEL 源和 Remi 源以获取较新的 PHP 版本。 - 防火墙设置:
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload - 安全加固:
- 禁用 root 远程登录。
- 配置 Fail2Ban 防止暴力破解。
- 为 MySQL 设置强密码并移除测试数据库。
总结
| 场景 | 推荐 OS | 理由 |
|---|---|---|
| 新项目 / 生产环境 | AlmaLinux 8/9 或 Rocky Linux 8/9 | RHEL 兼容,稳定,有长期支持,社区活跃 |
| 个人学习 / 熟悉 Ubuntu 生态 | Ubuntu 22.04 LTS | 文档多,APT 易用,云厂商支持好 |
| 老旧项目迁移 | CentOS 7 | 仅用于兼容旧环境,需自行打安全补丁,不推荐新建 |
| 避免使用 | CentOS 8 / Stream | 已停更或不稳定,缺乏长期支持 |
最后提醒:无论选择哪个发行版,请务必定期备份 WordPress 文件和数据库。使用云服务商的快照功能是最简单有效的备份方式。
云技术博客