在 CentOS 上安装 WordPress,本质上需要搭建一个标准的 LAMP(Linux + Apache + MySQL/MariaDB + PHP)或 LEMP(Nginx + MySQL/MariaDB + PHP)环境。以下是必须预先配置的核心组件及简要说明:
1. Web 服务器
WordPress 需要一个 HTTP 服务器来提供网页服务。
- Apache (httpd):最常用,配合
.htaccess文件实现 URL 重写(如伪静态)。 - Nginx:性能更高,需手动配置
server块和fastcgi参数。 -
安装命令示例:
# Apache sudo yum install httpd sudo systemctl enable --now httpd # Nginx sudo yum install nginx sudo systemctl enable --now nginx
2. 数据库管理系统
WordPress 需要存储文章、用户、设置等数据。
- MariaDB:CentOS 官方推荐(MySQL 的分支),兼容性好且默认集成。
- MySQL:也可使用,但 MariaDB 通常更受社区青睐。
- 操作要点:安装后需运行安全脚本(
mysql_secure_installation),创建专用数据库和用户并授权。 - 安装命令示例:
sudo yum install mariadb-server mariadb sudo systemctl enable --now mariadb
3. PHP 及其扩展
WordPress 是 PHP 编写的,需要特定版本的 PHP(建议 8.0+)及关键扩展。
- 核心版本:根据 WordPress 要求选择(当前推荐 PHP 8.1/8.2)。
- 必需扩展:
php-mysqlnd/php-mysql(连接数据库)php-gd(图像处理)php-json,php-mbstring,php-xml,php-zip(常见功能支持)php-curl,php-intl(部分插件依赖)
- 安装命令示例(以 EPEL 源为例):
sudo yum install epel-release sudo yum install php php-fpm php-mysqlnd php-gd php-json php-mbstring php-xml php-zip php-curl php-intl
4. 额外依赖与工具
- Git:若通过命令行更新 WordPress 或管理插件可能需要。
- Composer:现代 WordPress 主题/插件可能依赖 Composer 管理 PHP 包。
- File permissions:确保 Web 目录所有者为
apache或nginx用户,数据库权限正确。
5. 防火墙与安全配置
- 开放端口:允许 80 (HTTP) / 443 (HTTPS)。
- SELinux:CentOS 默认开启,需调整策略允许 Web 服务访问数据库或网络资源(若遇到权限错误)。
- SSL 证书:生产环境强烈建议配置 HTTPS(可用 Let’s Encrypt + Certbot)。
快速验证清单
| 组件 | 检查命令 | 预期结果 |
|---|---|---|
| Web 服务 | systemctl status httpd 或 nginx |
active (running) |
| 数据库 | systemctl status mariadb |
active (running) |
| PHP 版本 | php -v |
显示 8.x 版本 |
| 关键扩展 | php -m | grep mysql |
应包含 mysqli 或 pdo_mysql |
| 网络连通性 | curl -I http://localhost |
HTTP 200 OK |
💡 提示:若使用宝塔面板、Webmin 等图形化管理工具,上述步骤可简化为“一键安装 LAMP/LEMP"。但若追求最小化部署或自动化脚本(如 Ansible),则需手动按上述顺序配置。
完成以上组件后,即可下载 WordPress 源码到 Web 根目录(如 /var/www/html),配置 wp-config.php 连接数据库,并通过浏览器访问完成最终安装向导。
PHPWP博客