在 CentOS 服务器上安装多个 WordPress 实例的步骤如下。我们将使用 Apache(或 Nginx)、PHP、MariaDB/MySQL 和多个虚拟主机来实现。
🛠️ 前提条件
- 已有一台运行 CentOS 7 或 CentOS 8 的服务器(本文以 CentOS 7 为例)
- 具有 root 或 sudo 权限
- 已配置好网络和防火墙
✅ 步骤 1:更新系统并安装必要软件
sudo yum update -y
安装 LAMP 堆栈(Linux + Apache + MariaDB + PHP):
sudo yum install httpd mariadb-server mariadb php php-mysql php-gd php-xml php-mbstring php-json -y
启动并启用服务:
sudo systemctl start httpd
sudo systemctl enable httpd
sudo systemctl start mariadb
sudo systemctl enable mariadb
✅ 步骤 2:安全配置 MariaDB
运行安全脚本:
sudo mysql_secure_installation
按提示设置 root 密码,移除匿名用户,禁止远程 root 登录等。
✅ 步骤 3:为每个 WordPress 实例创建数据库和用户
登录 MariaDB:
mysql -u root -p
为第一个站点创建数据库和用户(例如 wordpress1):
CREATE DATABASE wordpress1;
CREATE USER 'wpuser1'@'localhost' IDENTIFIED BY 'strong_password_1';
GRANT ALL PRIVILEGES ON wordpress1.* TO 'wpuser1'@'localhost';
FLUSH PRIVILEGES;
为第二个站点创建(例如 wordpress2):
CREATE DATABASE wordpress2;
CREATE USER 'wpuser2'@'localhost' IDENTIFIED BY 'strong_password_2';
GRANT ALL PRIVILEGES ON wordpress2.* TO 'wpuser2'@'localhost';
FLUSH PRIVILEGES;
退出:
EXIT;
✅ 步骤 4:下载并解压 WordPress
进入临时目录并下载最新版 WordPress:
cd /tmp
curl -O https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
✅ 步骤 5:为每个 WordPress 实例创建独立目录
sudo mkdir -p /var/www/site1.example.com
sudo mkdir -p /var/www/site2.example.com
复制 WordPress 文件到每个站点目录:
sudo cp -r /tmp/wordpress/* /var/www/site1.example.com/
sudo cp -r /tmp/wordpress/* /var/www/site2.example.com/
设置正确的权限和所有者(假设使用 apache 用户):
sudo chown -R apache:apache /var/www/site1.example.com
sudo chown -R apache:apache /var/www/site2.example.com
sudo chmod -R 755 /var/www
✅ 步骤 6:为每个站点配置 wp-config.php
进入每个站点目录并重命名示例配置文件:
cd /var/www/site1.example.com
sudo cp wp-config-sample.php wp-config.php
sudo vim wp-config.php
修改以下内容:
define('DB_NAME', 'wordpress1');
define('DB_USER', 'wpuser1');
define('DB_PASSWORD', 'strong_password_1');
保存后,对第二个站点做同样操作:
cd /var/www/site2.example.com
sudo cp wp-config-sample.php wp-config.php
sudo vim wp-config.php
修改为:
define('DB_NAME', 'wordpress2');
define('DB_USER', 'wpuser2');
define('DB_PASSWORD', 'strong_password_2');
✅ 步骤 7:配置 Apache 虚拟主机
创建虚拟主机配置文件:
sudo vim /etc/httpd/conf.d/site1.example.com.conf
内容如下:
<VirtualHost *:80>
ServerName site1.example.com
DocumentRoot /var/www/site1.example.com
<Directory /var/www/site1.example.com>
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/httpd/site1_error.log
CustomLog /var/log/httpd/site1_access.log combined
</VirtualHost>
同样创建第二个站点配置:
sudo vim /etc/httpd/conf.d/site2.example.com.conf
<VirtualHost *:80>
ServerName site2.example.com
DocumentRoot /var/www/site2.example.com
<Directory /var/www/site2.example.com>
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/httpd/site2_error.log
CustomLog /var/log/httpd/site2_access.log combined
</VirtualHost>
✅ 步骤 8:重启 Apache 并测试
sudo systemctl restart httpd
确保防火墙允许 HTTP 流量:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
✅ 步骤 9:通过浏览器完成安装
在浏览器中访问:
http://site1.example.comhttp://site2.example.com
分别完成各自的 WordPress 安装向导。
⚠️ 注意:确保域名已解析到服务器 IP,或本地 hosts 文件添加测试映射:
192.168.1.100 site1.example.com 192.168.1.100 site2.example.com
✅ 可选:安装 SSL(Let’s Encrypt)
使用 Certbot 为每个站点启用 HTTPS:
sudo yum install epel-release -y
sudo yum install certbot python3-certbot-apache -y
为每个站点申请证书:
sudo certbot --apache -d site1.example.com
sudo certbot --apache -d site2.example.com
✅ 总结
| 步骤 | 内容 |
|---|---|
| 1 | 安装 LAMP 环境 |
| 2 | 配置数据库(每实例一个 DB) |
| 3 | 解压 WordPress 到不同目录 |
| 4 | 配置 wp-config.php |
| 5 | 设置 Apache 虚拟主机 |
| 6 | 重启服务并访问安装页面 |
✅ 这样,你就在一台 CentOS 服务器上成功部署了多个独立的 WordPress 实例,彼此隔离,可独立管理。
如有需要,也可改用 Nginx + PHP-FPM 实现更高性能。
PHPWP博客