在CentOS服务器上安装多个WordPress实例的步骤是什么?

在 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.com
  • http://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 实现更高性能。