是的,WordPress 支持在同一个服务器上搭建多个网站,有以下几种主流方式:
✅ 方式一:WordPress 多站点网络(Multisite)
适合场景:多个网站属于同一品牌/组织,内容管理集中,用户可共享
优点:统一后台管理、插件/主题集中部署、节省资源
缺点:权限耦合、一个站点被黑可能影响全部
启用步骤:
- 在
wp-config.php添加:define('WP_ALLOW_MULTISITE', true); - 登录后台 → 工具 → 网络配置 → 选择子目录或子域名模式
- 按提示修改
wp-config.php和.htaccess
示例结构:
- 主站:
example.com - 子站:
example.com/blog1或blog1.example.com
✅ 方式二:独立 WordPress 安装(推荐)
适合场景:网站完全独立(不同客户/业务)
操作:
- 方法A:每个网站用独立目录(如
/var/www/site1,/var/www/site2) - 方法B:用子域名指向不同目录(需配置虚拟主机)
Nginx 配置示例:
server {
listen 80;
server_name site1.example.com;
root /var/www/site1;
index index.php;
# ... WordPress 标准配置
}
server {
listen 80;
server_name site2.example.com;
root /var/www/site2;
index index.php;
# ... 独立数据库和wp-config.php
}
关键点:
- 每个站点使用独立数据库
- 每个
wp-config.php配置不同数据库凭据 - 可共享同一PHP-FPM进程池(节省内存)
✅ 方式三:Docker 容器化部署(高级)
适合场景:需要隔离环境、快速扩展
优势:资源隔离、版本独立、易备份
示例:
# docker-compose.yml
services:
site1:
image: wordpress:php8.1
environment:
WORDPRESS_DB_NAME: wp_site1
volumes:
- ./site1:/var/www/html
site2:
image: wordpress:php8.1
environment:
WORDPRESS_DB_NAME: wp_site2
volumes:
- ./site2:/var/www/html
⚠️ 注意事项
- 数据库分离:避免所有站点共用同一数据库(安全风险)
- 备份策略:按站点独立备份(推荐插件:UpdraftPlus)
- SSL证书:多域名需配置通配符证书或 Let’s Encrypt 多域名证书
- 性能监控:用
htop或New Relic监控各站点资源占用
📊 选择建议
| 需求 | 推荐方案 |
|---|---|
| 同一团队管理多个子站 | WordPress Multisite |
| 客户网站/完全独立业务 | 独立安装 + 虚拟主机 |
| 开发/测试环境 | Docker 容器化 |
💡 提示:从独立安装开始,后期再根据需求合并到多站点网络(反向操作较困难)
PHPWP博客