在轻量服务器(如腾讯云轻量应用服务器、阿里云轻量服务器等)上搭建多个 WordPress 站点,可以通过以下几种方式实现:
🧩 一、常见方案分类
1. 使用不同域名 + 虚拟主机配置(推荐)
- 在一个 Nginx/Apache 中配置多个虚拟主机。
- 每个 WordPress 站点使用独立的目录和数据库。
- 适合资源有限的轻量服务器。
2. 使用子目录或子域名
- 单个 WordPress 安装 + 多站点网络(Multisite)
- 适合管理多个相关网站
- 配置稍复杂,对插件兼容性有一定要求
3. Docker 容器化部署
- 每个 WordPress 使用独立容器(含 PHP、MySQL)
- 更隔离,但对轻量服务器性能有更高要求
✅ 推荐方法:使用虚拟主机配置多个 WordPress 站点
🔧 前提条件:
- 已安装 LAMP 或 LNMP 环境(如 Nginx + PHP + MySQL)
- 至少有两个域名或子域名指向该服务器 IP
- 服务器内存 ≥ 1GB(建议)
🛠️ 步骤详解:
1. 准备多个域名或子域名
例如:
site1.example.comsite2.example.com
将它们的 A 记录解析到你的轻量服务器公网 IP。
2. 创建不同的 WordPress 文件夹
mkdir -p /var/www/site1
mkdir -p /var/www/site2
分别下载 WordPress 到这两个文件夹:
cd /var/www/site1
wget https://wordpress.org/latest.tar.gz
tar -zxvf latest.tar.gz
mv wordpress/* .
cd /var/www/site2
wget https://wordpress.org/latest.tar.gz
tar -zxvf latest.tar.gz
mv wordpress/* .
3. 创建独立数据库和用户
登录 MySQL:
mysql -u root -p
执行以下 SQL:
CREATE DATABASE wp_site1;
CREATE DATABASE wp_site2;
CREATE USER 'wp_user1'@'localhost' IDENTIFIED BY 'your_password';
CREATE USER 'wp_user2'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON wp_site1.* TO 'wp_user1'@'localhost';
GRANT ALL PRIVILEGES ON wp_site2.* TO 'wp_user2'@'localhost';
FLUSH PRIVILEGES;
4. 配置 WordPress 的 wp-config.php
进入每个站点目录,编辑 wp-config.php 文件:
site1:
define('DB_NAME', 'wp_site1');
define('DB_USER', 'wp_user1');
define('DB_PASSWORD', 'your_password');
define('DB_HOST', 'localhost');
site2:
define('DB_NAME', 'wp_site2');
define('DB_USER', 'wp_user2');
define('DB_PASSWORD', 'your_password');
define('DB_HOST', 'localhost');
记得修改 $table_prefix,避免冲突。
5. 配置 Nginx 虚拟主机
创建两个配置文件,比如 /etc/nginx/sites-available/site1.conf 和 site2.conf:
示例:site1.conf
server {
listen 80;
server_name site1.example.com;
root /var/www/site1;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php-fpm.sock;
}
location ~ /.ht {
deny all;
}
}
同理配置 site2.conf,注意修改 server_name 和 root 路径。
启用站点并测试:
ln -s /etc/nginx/sites-available/site1.conf /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/site2.conf /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
6. 完成 WordPress 安装
访问 http://site1.example.com 和 http://site2.example.com,分别完成各自的 WordPress 安装流程。
📦 可选扩展
使用 Let’s Encrypt 添加 HTTPS:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx
选择对应的域名即可自动配置 SSL。
🐳 Docker 方式(进阶)
如果你熟悉 Docker,也可以使用如下命令启动多个 WordPress 实例:
docker run -d
--name site1
-e WORDPRESS_DB_NAME=wp_site1
-e WORDPRESS_DB_USER=wp_user1
-e WORDPRESS_DB_PASSWORD=your_password
-p 8081:80
-v /path/to/site1:/var/www/html
wordpress
# 同理启动 site2 使用不同端口或域名
再配合 Nginx 做反向。
🧪 小贴士
| 注意事项 | 说明 |
|---|---|
| 内存限制 | 若服务器只有 1GB 内存,不要运行太多服务 |
| 数据库优化 | 使用 MariaDB 替代 MySQL 更节省资源 |
| 缓存提速 | 安装 Redis 或 OPcache 提升性能 |
| 安全防护 | 使用 fail2ban、关闭不必要的端口 |
✅ 总结
| 方法 | 优点 | 缺点 |
|---|---|---|
| 虚拟主机 | 简单易维护,资源占用低 | 需手动配置 |
| WordPress Multisite | 统一管理 | 插件兼容问题多 |
| Docker | 高度隔离,灵活 | 对新手难度高 |
如果你告诉我你使用的具体服务器品牌(如腾讯云轻量)、操作系统(如 Ubuntu 22.04)、当前环境(是否已有 LNMP),我可以给出更详细的步骤。需要的话可以继续问我 👇
ECLOUD博客