在云服务器上搭建多个 WordPress 网站是一个非常常见的需求,适用于个人博客、企业网站、多客户托管等场景。下面我会详细说明如何在云服务器(如阿里云、腾讯云、AWS、DigitalOcean 等)上部署多个 WordPress 站点。
🧩 一、准备环境
你可以在一台云服务器上通过以下方式部署多个 WordPress 站点:
✅ 推荐配置:
- 操作系统:Ubuntu / CentOS / Debian(推荐 Ubuntu 20.04 或 22.04)
- Web 服务器:Nginx 或 Apache
- 数据库:MySQL 或 MariaDB
- PHP:PHP 7.4+(WordPress 官方推荐)
- 域名解析:每个 WordPress 站点对应一个独立域名或子域名
🛠 二、安装基础环境(以 Ubuntu + Nginx 为例)
# 更新系统
sudo apt update && sudo apt upgrade -y
# 安装 Nginx
sudo apt install nginx -y
# 安装 MySQL
sudo apt install mysql-server -y
# 安装 PHP 及扩展
sudo apt install php php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
# 启动并设置开机自启
sudo systemctl enable --now nginx php8.1-fpm mysql
注意:根据你的系统版本选择合适的 PHP 版本(例如
php8.1-fpm)
🔐 三、创建数据库和用户(为每个站点准备)
mysql -u root -p
进入 MySQL 后执行如下命令:
-- 创建第一个网站的数据库和用户
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;
-- 创建第二个网站的数据库和用户
CREATE DATABASE wp_site2;
CREATE USER 'wp_user2'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON wp_site2.* TO 'wp_user2'@'localhost';
FLUSH PRIVILEGES;
exit;
🌐 四、下载并配置 WordPress 站点(多个目录)
你可以将每个 WordPress 站点放在不同的目录中,例如:
cd /var/www
sudo mkdir site1 site2
分别下载 WordPress 到这些目录:
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzvf latest.tar.gz -C /var/www/site1
sudo cp -r wordpress/* /var/www/site1/
sudo rm -rf latest.tar.gz wordpress
# 同理为 site2 重复操作
sudo tar -xzvf latest.tar.gz -C /var/www/site2
...
然后分别为每个站点配置 wp-config.php 文件,并连接对应的数据库。
⚙️ 五、配置 Nginx 虚拟主机(Virtual Host)
编辑 Nginx 配置文件:
sudo nano /etc/nginx/sites-available/site1.conf
添加如下内容:
server {
listen 80;
server_name site1.com www.site1.com;
root /var/www/site1;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
location ~ /.ht {
deny all;
}
}
同理创建 site2.conf,替换域名和路径即可。
启用站点并测试:
sudo ln -s /etc/nginx/sites-available/site1.conf /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/site2.conf /etc/nginx/sites-enabled/
sudo nginx -t # 检查配置是否正确
sudo systemctl reload nginx
📦 六、使用 WordPress 多站点功能(可选)
如果你希望用 一个 WordPress 安装 来管理多个站点,可以使用 WordPress 的「多站点」功能(Multisite),但这对维护和权限控制要求更高。
✅ 七、注意事项
| 项目 | 说明 |
|---|---|
| 域名 | 每个 WordPress 站点应绑定不同域名或子域名 |
| 权限 | 确保 /var/www/site1 目录权限为 www-data 用户所有 |
| 安全 | 使用 Let’s Encrypt 为每个站点配置 HTTPS |
| 性能 | 如果站点较多,建议使用缓存插件(如 WP Super Cache) |
💡 八、总结
| 方法 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| 多 WordPress 安装 | 多个完全独立的站点 | 独立性强 | 占用资源多 |
| WordPress Multisite | 统一管理多个子站点 | 易于集中管理 | 插件兼容性差,维护复杂 |
如果你想,我可以为你生成完整的 Nginx 配置模板、一键脚本或自动化部署方案(比如使用 Docker)。
需要吗?🙂
CLOUD技术博