在阿里云上搭建多个 WordPress 网站是完全可行的,常见的方式有以下几种,具体选择取决于你的需求(如成本、性能、管理复杂度等):
✅ 一、方案选择
方案1:一台ECS服务器 + 多个WordPress站点(推荐初学者/节省成本)
- 使用一台阿里云ECS(云服务器)部署多个 WordPress。
- 可通过 虚拟主机(Virtual Host) 实现多站点共存。
- 支持多域名绑定不同站点。
实现方式:
-
安装 LAMP/LEMP 环境
- LAMP:Linux + Apache + MySQL + PHP
- LEMP:Linux + Nginx + MySQL + PHP(性能更好)
-
配置多个虚拟主机
- Apache:配置多个
VirtualHost - Nginx:配置多个
server块
- Apache:配置多个
-
为每个站点创建独立数据库和目录
- 比如:
/var/www/wordpress1→ 绑定site1.com/var/www/wordpress2→ 绑定site2.com
- 比如:
-
绑定域名并配置DNS
- 在阿里云域名控制台解析域名到ECS公网IP。
-
安装SSL(可选)
- 使用 Let’s Encrypt 免费证书(通过 Certbot)。
✅ 优点:成本低,管理集中
❌ 缺点:资源共用,一个站点出问题可能影响其他站点
方案2:多个ECS服务器 + 每台部署一个WordPress(适合高流量或隔离需求)
- 每个WordPress使用独立的ECS实例。
- 更安全、更稳定,适合企业级应用。
优点:
- 故障隔离
- 资源独享
- 安全性高
缺点:
- 成本高
- 管理复杂
方案3:使用容器(Docker)部署多个WordPress(高级推荐)
- 使用 Docker + Docker Compose 快速部署多个独立 WordPress 实例。
- 每个站点独立容器,互不干扰。
示例 docker-compose.yml:
version: '3.8'
services:
db1:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: example
MYSQL_DATABASE: wordpress1
volumes:
- db1_data:/var/lib/mysql
wordpress1:
image: wordpress:latest
depends_on:
- db1
environment:
WORDPRESS_DB_HOST: db1:3306
WORDPRESS_DB_USER: root
WORDPRESS_DB_PASSWORD: example
WORDPRESS_DB_NAME: wordpress1
ports:
- "8080:80"
volumes:
- wp1_data:/var/www/html
db2:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: example
MYSQL_DATABASE: wordpress2
volumes:
- db2_data:/var/lib/mysql
wordpress2:
image: wordpress:latest
depends_on:
- db2
environment:
WORDPRESS_DB_HOST: db2:3306
WORDPRESS_DB_USER: root
WORDPRESS_DB_PASSWORD: example
WORDPRESS_DB_NAME: wordpress2
ports:
- "8081:80"
volumes:
- wp2_data:/var/lib/mysql
volumes:
db1_data:
db2_data:
wp1_data:
wp2_data:
✅ 优点:隔离性好、易于扩展、可一键部署
💡 建议配合 Nginx 反向X_X + 域名实现site1.com→localhost:8080
方案4:使用阿里云轻量应用服务器(LightHouse)
- 阿里云轻量服务器支持一键部署 WordPress。
- 可以购买多个轻量实例,每个运行一个 WordPress。
- 适合不想折腾环境的新手。
✅ 优点:简单快捷,自带防火墙、监控
❌ 缺点:灵活性较低,不适合复杂定制
✅ 二、操作步骤(以方案1为例:一台ECS部署多个WordPress)
步骤1:购买并配置ECS
- 地区:选择靠近用户的位置
- 镜像:推荐
Ubuntu 20.04/22.04或CentOS 7/8 - 安全组:开放 80(HTTP)、443(HTTPS)、22(SSH)
步骤2:安装LNMP环境(以Ubuntu + Nginx为例)
# 更新系统
sudo apt update && sudo apt upgrade -y
# 安装Nginx、MySQL、PHP
sudo apt install nginx mysql-server php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
# 启动服务
sudo systemctl enable nginx mysql php-fpm
sudo systemctl start nginx mysql php-fpm
步骤3:准备多个WordPress目录
sudo mkdir -p /var/www/site1 /var/www/site2
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
# 复制到各自目录
sudo cp -r wordpress/* /var/www/site1/
sudo cp -r wordpress/* /var/www/site2/
# 设置权限
sudo chown -R www-data:www-data /var/www/site1 /var/www/site2
步骤4:创建数据库
sudo mysql -u root
CREATE DATABASE wordpress_site1;
CREATE DATABASE wordpress_site2;
CREATE USER 'wpuser1'@'localhost' IDENTIFIED BY 'strongpassword1';
CREATE USER 'wpuser2'@'localhost' IDENTIFIED BY 'strongpassword2';
GRANT ALL PRIVILEGES ON wordpress_site1.* TO 'wpuser1'@'localhost';
GRANT ALL PRIVILEGES ON wordpress_site2.* TO 'wpuser2'@'localhost';
FLUSH PRIVILEGES;
EXIT;
步骤5:配置Nginx虚拟主机
创建两个配置文件:
/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:/var/run/php/php8.1-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:/var/run/php/php8.1-fpm.sock;
}
}
启用站点:
sudo ln -s /etc/nginx/sites-available/site1.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/site2.com /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
步骤6:域名解析
- 登录阿里云控制台 → 域名解析
- 添加 A 记录指向 ECS 公网 IP
步骤7:访问安装向导
- 打开
http://site1.com和http://site2.com - 按提示完成 WordPress 安装
✅ 三、注意事项
- 备份:定期备份数据库和文件
- 安全:
- 修改默认的 WordPress 登录路径(如用插件)
- 使用强密码
- 安装安全插件(如 Wordfence)
- 性能优化:
- 使用缓存插件(如 WP Super Cache)
- 配置 CDN(阿里云CDN或免费Cloudflare)
- HTTPS:
- 使用 Certbot 配置免费 SSL 证书
✅ 四、推荐工具
| 工具 | 用途 |
|---|---|
| phpMyAdmin | 数据库管理 |
| Fail2ban | 防止暴力破解 |
| Certbot | 免费SSL证书 |
| 宝塔面板(可选) | 图形化管理网站、数据库、SSL等(适合新手) |
安装宝塔面板(一键脚本):
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
总结
| 方案 | 适用场景 |
|---|---|
| 一台ECS多站点 | 小型网站、预算有限 |
| 多台ECS | 高性能、高隔离需求 |
| Docker | 开发、测试、自动化部署 |
| 轻量服务器 | 新手、快速上线 |
如果你告诉我你的具体需求(比如:几个网站?是否需要HTTPS?预算?技术熟练度?),我可以给你定制更详细的部署方案。
CLOUD云