同一台服务器多个 WordPress?

是的,同一台服务器上可以运行多个 WordPress 网站。这是非常常见的一种做法,适用于个人博客、企业多站点管理、客户项目托管等场景。

下面是一些常见的实现方式和注意事项:


✅ 实现方式

1. 使用不同的目录(子目录)

每个 WordPress 安装在服务器上的不同目录中,例如:

  • /var/www/site1
  • /var/www/site2

配置要点:

  • 每个站点绑定不同的域名或子域名(通过虚拟主机配置)
  • Apache 或 Nginx 中配置多个 VirtualHostserver
  • 每个 WordPress 使用独立数据库和配置文件(wp-config.php

2. WordPress 多站点网络(Multisite Network)

WordPress 自带一个多站点功能,允许你用一个 WordPress 安装来托管多个子站点。

优点:

  • 共享插件、主题、用户系统
  • 统一后台管理多个网站

缺点:

  • 所有站点共享同一个 WordPress 核心版本
  • 插件和主题管理需要统一控制
  • 不适合完全独立的多个项目

启用方法:

wp-config.php 中添加:

define('WP_ALLOW_MULTISITE', true);

然后在后台启用“多站点网络”。


3. 使用 Docker 容器化部署

如果你熟悉 Docker,可以为每个 WordPress 站点创建独立容器,使用不同的端口或反向X_X分发到不同域名。

示例结构:

  • site1.example.com → 容器 A(DB A)
  • site2.example.com → 容器 B(DB B)

优点:

  • 完全隔离环境
  • 易于扩展和维护

4. 使用虚拟主机 + 子域名或子路径

比如:

  • blog1.example.com 和 blog2.example.com 分别指向不同的 WordPress 安装目录
  • 或者 example.com/blog1 和 example.com/blog2,但后者较难维护

🛠️ 技术准备

项目 内容
Web Server Apache / Nginx
数据库 MySQL / MariaDB(每个站点最好独立数据库)
PHP 可共用,也可为每个站点指定不同版本(如使用 php-fpm + 多版本 PHP)
文件权限 确保每个 WordPress 的目录权限正确

🔐 安全建议

  • 每个 WordPress 站点使用独立数据库账户
  • 设置合适的文件权限(通常:755 目录,644 文件)
  • 使用 .htaccess 或 Nginx 规则防止敏感文件泄露
  • 定期更新所有 WordPress 安装和插件

🧪 示例:Nginx 多站点配置

# 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/php8.1-fpm.sock;
    }
}

# site2.conf
server {
    listen 80;
    server_name site2.example.com;

    root /var/www/site2;
    ...
}

❓常见问题

Q: 能不能共享数据库?

A: 可以,但必须使用不同的表前缀(table prefix),推荐还是各自独立数据库更安全清晰。

Q: 如何管理多个 WordPress?

A: 可以使用工具如 MainWP、Infinite WP 来集中管理多个站点。


如果你告诉我你的服务器环境(比如 Ubuntu + Apache 还是 CentOS + Nginx),我可以提供更具体的配置示例。

是否需要我帮你写一个完整的部署教程?

未经允许不得转载:ECLOUD博客 » 同一台服务器多个 WordPress?