是的,一台服务器上可以运行两个甚至多个 WordPress 站点。常见的实现方式有以下几种,具体取决于你的需求和技术栈:
✅ 一、使用不同的域名或子目录
方法1:使用不同域名(虚拟主机配置)
- 原理:通过 Apache 或 Nginx 配置多个虚拟主机,每个域名绑定到服务器上的不同目录。
- 示例结构:
/var/www/site1.com/ /var/www/site2.com/ - 优点:两个站点完全独立,互不影响。
- 适用场景:两个完全不同的网站,如企业官网 + 博客。
Nginx 示例配置:
server {
listen 80;
server_name site1.com www.site1.com;
root /var/www/site1.com;
index index.php;
# 其他 WordPress 的标准配置...
}
server {
listen 80;
server_name site2.com www.site2.com;
root /var/www/site2.com;
index index.php;
# 其他 WordPress 的标准配置...
}
方法2:使用子目录(多站点模式)
-
原理:在一个 WordPress 安装中启用“多站点”功能,支持多个子站点,例如:
example.com/site1example.com/site2
-
步骤:
- 编辑
wp-config.php,添加:define('WP_ALLOW_MULTISITE', true); - 登录后台 → 工具 → 配置网络(启用多站点)。
- 根据提示修改
.htaccess和wp-config.php。 - 创建子站点即可。
- 编辑
-
优点:统一管理,插件/主题共享。
-
缺点:一个站点出问题可能影响其他站点;升级和维护需谨慎。
✅ 二、使用不同的数据库(推荐)
无论你是用不同域名还是子目录的方式,建议为每个 WordPress 站点分配独立的数据库,这样更安全、更易维护。
✅ 三、使用 Docker(高级用户)
如果你熟悉容器化技术,可以用 Docker 来部署多个 WordPress 实例,每个实例使用不同的端口或反向设置。
示例命令:
docker run --name wordpress1 -e WORDPRESS_DB_NAME=wordpress1 -p 8001:80 -d wordpress
docker run --name wordpress2 -e WORDPRESS_DB_NAME=wordpress2 -p 8002:80 -d wordpress
然后通过 Nginx 反向分别映射到不同的域名。
📌 小贴士
| 场景 | 推荐方案 |
|---|---|
| 两个完全独立的网站 | 不同域名 + 不同目录 |
| 同一品牌下的多个子站 | 子目录多站点模式 |
| 技术能力强、喜欢灵活控制 | Docker 多实例 |
| 资源有限但需要隔离 | 使用软链接或二级子域 |
如果你告诉我你使用的服务器环境(比如 Ubuntu + Apache/Nginx,或者宝塔面板等),我可以给出更具体的部署教程 😊
是否需要我为你生成一份完整的部署脚本或配置文件?
ECLOUD博客