在阿里云服务器上部署两个独立的WordPress站点是完全可行的,以下是几种常见的实现方式及详细步骤:
方案一:使用不同端口(适合测试环境)
步骤:
-
安装第一个WordPress
cd /var/www/html wget https://wordpress.org/latest.tar.gz tar -xzvf latest.tar.gz mv wordpress site1 -
配置Nginx(示例配置)
server { listen 80; server_name _; root /var/www/html/site1; index index.php; location / { try_files $uri $uri/ /index.php?$args; } location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; } } -
安装第二个WordPress
cd /var/www/html cp -r site1 site2 -
添加第二个站点的Nginx配置
server { listen 8080; # 使用不同端口 server_name _; root /var/www/html/site2; # 其他配置与第一个站点相同 }
方案二:使用虚拟主机(推荐生产环境)
步骤:
-
准备域名
- 解析两个域名到服务器IP(如:site1.com和site2.com)
-
Nginx虚拟主机配置
# 站点1 server { listen 80; server_name site1.com; root /var/www/html/site1; # ...其他WordPress配置 } # 站点2 server { listen 80; server_name site2.com; root /var/www/html/site2; # ...其他WordPress配置 } -
为每个站点创建独立数据库
CREATE DATABASE wp_site1; CREATE USER 'wp_user1'@'localhost' IDENTIFIED BY 'password1'; GRANT ALL ON wp_site1.* TO 'wp_user1'@'localhost'; CREATE DATABASE wp_site2; CREATE USER 'wp_user2'@'localhost' IDENTIFIED BY 'password2'; GRANT ALL ON wp_site2.* TO 'wp_user2'@'localhost';
方案三:使用Docker容器(适合隔离环境)
# 站点1
docker run --name wp1 -p 8080:80
-e WORDPRESS_DB_HOST=mysql
-e WORDPRESS_DB_USER=wp1
-e WORDPRESS_DB_PASSWORD=password1
-e WORDPRESS_DB_NAME=wp1
-v /path/to/wp1:/var/www/html
wordpress
# 站点2
docker run --name wp2 -p 8081:80
-e WORDPRESS_DB_HOST=mysql
-e WORDPRESS_DB_USER=wp2
-e WORDPRESS_DB_PASSWORD=password2
-e WORDPRESS_DB_NAME=wp2
-v /path/to/wp2:/var/www/html
wordpress
关键注意事项:
-
资源分配:
- 确保服务器配置足够(建议至少2核4GB内存)
- 使用
htop监控资源使用情况
-
安全措施:
- 为每个站点设置不同的数据库用户
- 定期更新WordPress核心和插件
- 配置防火墙规则(阿里云安全组)
-
备份策略:
# 数据库备份 mysqldump -u wp_user1 -p wp_site1 > wp_site1_backup.sql # 文件备份 tar -czvf wp_site1_backup.tar.gz /var/www/html/site1 -
性能优化:
- 启用OPcache
- 安装缓存插件(如WP Super Cache)
- 考虑使用Redis对象缓存
选择哪种方案取决于您的具体需求:
- 临时测试 → 端口方案
- 正式生产 → 虚拟主机方案
- 需要环境隔离 → Docker方案
部署完成后,建议使用工具如wp-cli管理多个站点:
# 管理站点1
wp --path=/var/www/html/site1 plugin list
# 管理站点2
wp --path=/var/www/html/site2 theme update --all
云服务器