能否在AlmaLinux或Rocky Linux上顺利安装和运行WordPress?需要额外配置吗?

是的,完全可以在 AlmaLinux 或 Rocky Linux 上顺利安装和运行 WordPress。事实上,AlmaLinux 和 Rocky Linux 作为 RHEL(Red Hat Enterprise Linux)的社区兼容发行版,与 CentOS Stream/CentOS 7/8 高度一致,是部署 WordPress 的优秀、稳定且推荐的选择,尤其适合生产环境。

✅ 为什么它们非常适合 WordPress?

  • 完全二进制兼容 RHEL → 享有企业级稳定性、长期支持(AlmaLinux/Rocky 9 支持至 2032 年)
  • 软件包生态完整(EPEL、PowerTools/CRB、AppStream 提供最新 PHP、MySQL/MariaDB、Nginx/Apache)
  • SELinux 默认启用(增强安全性,稍需配置但可加固 WordPress)
  • systemd、firewalld 等现代管理工具完善

✅ 推荐技术栈(生产就绪)

组件 推荐版本(Rocky/AlmaLinux 9) 备注
Web 服务器 Apache httpd(默认)或 Nginx nginx Apache 对 .htaccess 原生支持更友好;Nginx 性能更高,需额外配置伪静态(try_files)
数据库 MariaDB 10.11(AppStream) 兼容 MySQL,开箱即用,安全更新及时
PHP php:remi-8.2(推荐)或 php:stream-8.1(系统默认) ⚠️ 系统默认 php:stream-8.1 版本较旧(WordPress 6.5+ 推荐 PHP 8.1+,但 8.2 更佳),强烈建议启用 Remi 仓库获取新版 PHP
其他依赖 php-mysqlnd, php-gd, php-xml, php-curl, php-opcache, php-zip, php-fpm(若用 Nginx) 必装扩展,缺一不可

🔧 关键配置步骤(以 Rocky/AlmaLinux 9 + Apache + MariaDB + PHP 8.2 为例)

1️⃣ 启用必要仓库

# 启用 EPEL 和 CRB(CodeReady Builder,替代旧 PowerTools)
sudo dnf install -y epel-release
sudo dnf config-manager --set-enabled crb

# 添加并启用 Remi 仓库(获取新版 PHP)
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm
sudo dnf module reset php
sudo dnf module enable php:remi-8.2

2️⃣ 安装 LAMP 栈

sudo dnf install -y httpd mariadb-server php php-common php-mysqlnd php-gd php-xml php-curl php-opcache php-zip php-fpm
sudo systemctl enable --now httpd mariadb

3️⃣ 初始化数据库 & 创建 WordPress 数据库

sudo mysql_secure_installation  # 按提示设置 root 密码、禁用匿名用户等
mysql -u root -p <<'EOF'
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'StrongPass123!';
GRANT ALL ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EOF

4️⃣ 下载并配置 WordPress

cd /tmp
curl -O https://wordpress.org/latest.tar.gz
tar xzvf latest.tar.gz
sudo rsync -av wordpress/ /var/www/html/ --exclude='wp-config-sample.php'

# 设置权限(安全关键!)
sudo chown -R apache:apache /var/www/html/
sudo find /var/www/html/ -type d -exec chmod 755 {} ;
sudo find /var/www/html/ -type f -exec chmod 644 {} ;
sudo chmod 600 /var/www/html/wp-config.php

5️⃣ 生成并配置 wp-config.php

cd /var/www/html
sudo cp wp-config-sample.php wp-config.php
sudo nano wp-config.php  # 修改以下三行:
// define('DB_NAME', 'wordpress');
// define('DB_USER', 'wpuser');
// define('DB_PASSWORD', 'StrongPass123!');
// ✅ 强烈建议使用 WP-CLI 自动生成密钥(更安全):
curl -s https://api.wordpress.org/secret-key/1.1/salt/ | sudo tee -a wp-config.php

6️⃣ SELinux 配置(⚠️ 常见卡点!)

# 允许 HTTP 访问网络(如插件更新、Gravatar)
sudo setsebool -P httpd_can_network_connect 1

# 允许 WordPress 写入 uploads、cache 等目录(如需自动更新/上传)
sudo setsebool -P httpd_can_network_connect_db 1
sudo chcon -t httpd_sys_rw_content_t /var/www/html/wp-content/{uploads,cache,upgrade}

7️⃣ 防火墙放行

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https  # 如启用 HTTPS
sudo firewall-cmd --reload

8️⃣ (可选但推荐)启用 HTTPS(Let’s Encrypt)

sudo dnf install -y certbot python3-certbot-apache
sudo certbot --apache -d your-domain.com
# 自动配置 SSL 并启用重定向

🚫 常见问题 & 解决方案

问题 原因 解决
白屏 / 500 错误 PHP 扩展缺失(如 php-gd, php-xml)、OPcache 配置错误、文件权限不正确 运行 php -m | grep -E "(gd|xml|curl|mysql)" 检查;检查 /var/log/httpd/error_log
无法写入 wp-content SELinux 阻止写入 或 权限不足 chcon -t httpd_sys_rw_content_t ... + chown apache:apache
插件无法自动更新 SELinux 禁止 HTTPD 网络连接 setsebool -P httpd_can_network_connect 1
时区错误 / 日期显示异常 PHP 未设置时区 在 /etc/php.d/zz-wordpress.ini 中添加 date.timezone = "Asia/Shanghai"
上传文件大小限制 upload_max_filesize / post_max_size 过小 编辑 /etc/php.d/zz-wordpress.ini:upload_max_filesize = 64M, post_max_size = 128M, max_execution_time = 300

✅ 最佳实践建议(生产环境)

  • ✅ 使用 Redis 缓存(php-pecl-redis + WP 插件如 Redis Object Cache)
  • ✅ 启用 OPcache(已默认开启,确认 /etc/php.d/10-opcache.ini 未被注释)
  • ✅ 定期更新系统:sudo dnf update --security(自动安装修补)
  • ✅ 备份策略:mysqldump + rsync 脚本 + 定期离线存储
  • ✅ 安全加固:禁用 XML-RPC(如不用)、限制登录尝试(Fail2ban)、隐藏 WordPress 版本

✅ 结论

AlmaLinux 和 Rocky Linux 不仅能运行 WordPress,而且是比老旧 Ubuntu LTS 或未经硬化的 Debian 更适合企业级 WordPress 部署的选择。
只需按上述步骤启用 Remi PHP、正确配置 SELinux 和权限,即可获得高性能、高安全、长支持周期的 WordPress 环境。

如需,我可为你提供:

  • ✅ 一键部署脚本(Bash)
  • ✅ Nginx + PHP-FPM 配置模板
  • ✅ Docker Compose 方案(AlmaLinux 基础镜像)
  • ✅ 自动化备份/SSL 更新 Cron 示例

欢迎随时告知你的具体场景(开发/测试/生产?Apache/Nginx?是否需要多站点?),我可以为你定制完整方案 👨‍💻

未经允许不得转载:CLOUD技术博 » 能否在AlmaLinux或Rocky Linux上顺利安装和运行WordPress?需要额外配置吗?