是的,一台服务器上可以搭建多个 WordPress 网站。这在实际应用中非常常见,比如用于托管多个客户的网站、多个项目或不同的语言版本等。
下面是一些常见的实现方式:
✅ 一、使用虚拟主机配置(推荐)
这是最常见也是最灵活的方式,适用于 Apache 或 Nginx。
📌 Apache 示例:使用 VirtualHost
- 安装 Apache 和 PHP
sudo apt update
sudo apt install apache2 php php-mysql php-curl php-gd php-mbstring php-xml unzip
- 为每个站点创建目录
sudo mkdir -p /var/www/site1.example.com/public_html
sudo mkdir -p /var/www/site2.example.com/public_html
- 为每个站点创建虚拟主机配置文件
sudo nano /etc/apache2/sites-available/site1.conf
内容如下:
<VirtualHost *:80>
ServerAdmin admin@site1.example.com
ServerName site1.example.com
DocumentRoot /var/www/site1.example.com/public_html
<Directory /var/www/site1.example.com/public_html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
同样创建 site2.conf。
- 启用站点并重启 Apache
sudo a2ensite site1.conf
sudo a2ensite site2.conf
sudo systemctl reload apache2
- 分别下载 WordPress 到各自目录中
cd /var/www/site1.example.com/public_html
wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
mv wordpress/* .
rm -rf wordpress latest.tar.gz
# 同样操作 site2
- 分别为每个站点创建数据库和用户
CREATE DATABASE wp_site1;
CREATE USER 'wp_user1'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON wp_site1.* TO 'wp_user1'@'localhost';
FLUSH PRIVILEGES;
同理创建 wp_site2 数据库。
- 访问站点进行 WordPress 安装
浏览器访问 http://site1.example.com,按照提示填写数据库信息即可。
✅ 二、使用子目录部署多个 WordPress 站点(适合多用途)
你也可以在一个域名下通过不同路径来运行多个 WordPress,例如:
example.com/site1example.com/site2
只需将 WordPress 解压到对应的子目录中,并确保 .htaccess 和 permalinks 设置正确即可。
✅ 三、使用 Docker 部署多个 WordPress 容器
如果你熟悉 Docker,可以轻松用容器方式运行多个 WordPress 实例:
docker run --name wordpress1 -e WORDPRESS_DB_NAME=wpdb1 -e WORDPRESS_DB_USER=wpuser1 -e WORDPRESS_DB_PASSWORD=wp_pass -p 8001:80 -d wordpress
docker run --name wordpress2 -e WORDPRESS_DB_NAME=wpdb2 -e WORDPRESS_DB_USER=wpuser2 -e WORDPRESS_DB_PASSWORD=wp_pass -p 8002:80 -d wordpress
然后通过端口访问:http://yourserverip:8001 和 http://yourserverip:8002
✅ 四、注意事项
| 注意事项 | 说明 |
|---|---|
| 数据库分离 | 每个 WordPress 应该使用独立数据库或前缀,避免冲突 |
| 权限设置 | 文件夹权限建议为 www-data 用户组,权限为 755/644 |
| 性能优化 | 如果并发高,可考虑使用缓存插件、OPcache、CDN 等 |
| HTTPS 支持 | 可统一使用 Let’s Encrypt 证书配置 SSL |
✅ 总结
| 方法 | 优点 | 缺点 |
|---|---|---|
| Apache/Nginx 虚拟主机 | 灵活、稳定、易于管理 | 配置略复杂 |
| 子目录部署 | 简单快速 | 插件兼容性可能有问题 |
| Docker 容器化 | 易于扩展、隔离性强 | 需要 Docker 基础 |
如果你告诉我你的服务器环境(如 Ubuntu/Apache 还是 CentOS/Nginx),我可以提供更具体的步骤 😊
PHPWP博客