一个服务器用wordpress搭建多个网站?

是的,WordPress 支持在同一个服务器上搭建多个网站,有以下几种主流方式:


✅ 方式一:WordPress 多站点网络(Multisite)

适合场景:多个网站属于同一品牌/组织,内容管理集中,用户可共享
优点:统一后台管理、插件/主题集中部署、节省资源
缺点:权限耦合、一个站点被黑可能影响全部

启用步骤:

  1. 在 wp-config.php 添加:
    define('WP_ALLOW_MULTISITE', true);
  2. 登录后台 → 工具 → 网络配置 → 选择子目录或子域名模式
  3. 按提示修改 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

⚠️ 注意事项

  1. 数据库分离:避免所有站点共用同一数据库(安全风险)
  2. 备份策略:按站点独立备份(推荐插件:UpdraftPlus)
  3. SSL证书:多域名需配置通配符证书或 Let’s Encrypt 多域名证书
  4. 性能监控:用 htop 或 New Relic 监控各站点资源占用

📊 选择建议

需求 推荐方案
同一团队管理多个子站 WordPress Multisite
客户网站/完全独立业务 独立安装 + 虚拟主机
开发/测试环境 Docker 容器化

💡 提示:从独立安装开始,后期再根据需求合并到多站点网络(反向操作较困难)