努力
加油

安装WordPress推荐使用哪个CentOS版本?

直接给结论:强烈不推荐在 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 为例)

  1. 初始化系统:
    sudo dnf update -y
    sudo setenforce 0 && sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
  2. 安装 Nginx + PHP-FPM + MariaDB:
    推荐使用 OneinStack 或 Lnmp.org 的一键安装包,它们对 AlmaLinux/Rocky 的支持越来越好。如果手动安装,确保启用 EPEL 源和 Remi 源以获取较新的 PHP 版本。
  3. 防火墙设置:
    sudo firewall-cmd --permanent --add-service=http
    sudo firewall-cmd --permanent --add-service=https
    sudo firewall-cmd --reload
  4. 安全加固:
    • 禁用 root 远程登录。
    • 配置 Fail2Ban 防止暴力破解。
    • 为 MySQL 设置强密码并移除测试数据库。

总结

场景 推荐 OS 理由
新项目 / 生产环境 AlmaLinux 8/9 或 Rocky Linux 8/9 RHEL 兼容,稳定,有长期支持,社区活跃
个人学习 / 熟悉 Ubuntu 生态 Ubuntu 22.04 LTS 文档多,APT 易用,云厂商支持好
老旧项目迁移 CentOS 7 仅用于兼容旧环境,需自行打安全补丁,不推荐新建
避免使用 CentOS 8 / Stream 已停更或不稳定,缺乏长期支持

最后提醒:无论选择哪个发行版,请务必定期备份 WordPress 文件和数据库。使用云服务商的快照功能是最简单有效的备份方式。