是的,一台服务器上可以搭建多个 WordPress 网站。这是非常常见的做法,尤其适用于个人博客、中小企业或者托管多个客户网站的情况。
下面是几种常见的方式来在一台服务器上部署多个 WordPress:
✅ 一、使用虚拟主机配置(推荐方式)
前提条件:
- 使用 Nginx 或 Apache 这类 Web 服务器
- 安装了 PHP 和 MySQL/MariaDB
实现方法:
- 为每个 WordPress 站点分配不同的域名或子域名
- 在 Web 服务器中配置多个虚拟主机(Virtual Host)
- 每个站点使用独立的 WordPress 文件和数据库
示例:Nginx 配置两个 WordPress 站点
# /etc/nginx/sites-available/site1.com
server {
listen 80;
server_name site1.com www.site1.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;
}
}
# /etc/nginx/sites-available/site2.com
server {
listen 80;
server_name site2.com www.site2.com;
root /var/www/site2;
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;
}
}
然后分别创建目录 /var/www/site1 和 /var/www/site2,并各自安装 WordPress。
✅ 二、使用子目录安装多个 WordPress(不推荐)
你也可以将多个 WordPress 安装在同一个主域名的不同子目录下,例如:
- example.com/site1/
- example.com/site2/
但这种方式管理起来比较麻烦,不如虚拟主机灵活,除非有特殊需求,否则一般不推荐。
✅ 三、使用 WordPress 多站点功能(Multisite)
WordPress 自带一个叫 Multisite(多站点) 的功能,允许你在同一个 WordPress 安装中管理多个子站点。
支持模式:
- 子域名:site1.example.com
- 子目录:example.com/site1
启用步骤:
- 修改
wp-config.php,添加:define('WP_ALLOW_MULTISITE', true); - 登录后台 → 工具 → 配置网络
- 根据提示完成设置
- 修改
wp-config.php和.htaccess或 Nginx 配置 - 创建新站点即可
⚠️ 注意:Multisite 是共享插件、主题、用户系统的,适合统一管理多个相关网站。
✅ 四、使用 Docker 容器化部署多个 WordPress
如果你熟悉 Docker,可以轻松地运行多个 WordPress 容器,每个容器对应一个站点。
示例命令:
docker run -d
--name site1
-e WORDPRESS_DB_NAME=wpdb1
-e WORDPRESS_DB_USER=wpuser1
-e WORDPRESS_DB_PASSWORD=wp123
-p 8081:80
wordpress
docker run -d
--name site2
-e WORDPRESS_DB_NAME=wpdb2
-e WORDPRESS_DB_USER=wpuser2
-e WORDPRESS_DB_PASSWORD=wp456
-p 8082:80
wordpress
再配合反向(如 Nginx)进行域名转发即可。
✅ 总结对比
| 方法 | 优点 | 缺点 |
|---|---|---|
| 虚拟主机 + 多个 WP | 灵活、隔离性好 | 需要配置 Nginx/Apache |
| WordPress Multisite | 统一管理方便 | 插件冲突风险高 |
| Docker 容器化 | 易扩展、易维护 | 对运维要求略高 |
| 子目录安装 | 简单 | 不推荐,扩展性和 SEO 差 |
如果你告诉我你的服务器环境(比如 Ubuntu + Nginx + PHP?还是宝塔面板?),我可以提供更具体的配置教程。需要的话请继续提问!
CLOUD技术博