一个云服务器里部署两个wordpress网站?

在一个云服务器(例如阿里云、腾讯云、AWS、VPS 等)上部署 两个 WordPress 网站是完全可行的,常见做法有以下几种方式:


✅ 方法一:使用虚拟主机配置(推荐)

适用场景:

  • 同一个服务器上运行多个网站
  • 每个网站绑定不同的域名

实现步骤(以 Nginx 或 Apache 为例):

1. 安装 LNMP 环境(Linux + Nginx/Apache + MySQL + PHP)

如果你还没有安装环境,可以使用宝塔面板或手动安装。

推荐工具:

  • 宝塔面板(图形界面,操作简单)
  • 手动配置(适合高级用户)

2. 创建两个 WordPress 站点目录

mkdir -p /var/www/wordpress1
mkdir -p /var/www/wordpress2

然后分别下载 WordPress 到这两个目录:

cd /var/www/wordpress1
wget https://wordpress.org/latest.tar.gz
tar -zxvf latest.tar.gz
mv wordpress/* .

cd /var/www/wordpress2
wget https://wordpress.org/latest.tar.gz
tar -zxvf latest.tar.gz
mv wordpress/* .

3. 配置数据库(MySQL/MariaDB)

创建两个独立的数据库和用户:

CREATE DATABASE wp_site1;
CREATE DATABASE wp_site2;

CREATE USER 'wp_user1'@'localhost' IDENTIFIED BY 'your_password1';
CREATE USER 'wp_user2'@'localhost' IDENTIFIED BY 'your_password2';

GRANT ALL PRIVILEGES ON wp_site1.* TO 'wp_user1'@'localhost';
GRANT ALL PRIVILEGES ON wp_site2.* TO 'wp_user2'@'localhost';

FLUSH PRIVILEGES;

4. 配置 WordPress 的 wp-config.php

每个站点进入其目录并编辑 wp-config.php 文件:

nano /var/www/wordpress1/wp-config.php
nano /var/www/wordpress2/wp-config.php

修改对应的数据库名、用户名和密码。


5. 配置 Web 服务器(Nginx 示例)

创建两个虚拟主机配置文件:

/etc/nginx/sites-available/site1.conf

server {
    listen 80;
    server_name site1.com www.site1.com;
    root /var/www/wordpress1;

    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.conf

server {
    listen 80;
    server_name site2.com www.site2.com;
    root /var/www/wordpress2;

    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;
    }
}

然后启用这些配置并重启 Nginx:

ln -s /etc/nginx/sites-available/site1.conf /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/site2.conf /etc/nginx/sites-enabled/

systemctl restart nginx

✅ 方法二:使用子目录(Subdirectory)部署

如果你只想用一个 WordPress 安装来管理多个网站,也可以使用 WordPress 多站点模式(Multisite),但这种方式不如独立部署灵活,适用于内部统一管理的场景。


✅ 方法三:使用 Docker 部署多个 WordPress 容器

Docker 可以让你轻松地在同一台服务器上运行多个隔离的 WordPress 实例。每个实例拥有自己的数据库、PHP 配置等。

示例命令(使用 docker-compose):

version: '3'
services:
  wordpress1:
    image: wordpress
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_NAME: wp_site1
      WORDPRESS_DB_USER: wp_user1
      WORDPRESS_DB_PASSWORD: your_password1
    volumes:
      - ./wordpress1:/var/www/html

  db1:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: rootpass
      MYSQL_DATABASE: wp_site1
      MYSQL_USER: wp_user1
      MYSQL_PASSWORD: your_password1
    volumes:
      - ./mysql1:/var/lib/mysql

  wordpress2:
    image: wordpress
    ports:
      - "8081:80"
    environment:
      WORDPRESS_DB_NAME: wp_site2
      WORDPRESS_DB_USER: wp_user2
      WORDPRESS_DB_PASSWORD: your_password2
    volumes:
      - ./wordpress2:/var/www/html

  db2:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: rootpass
      MYSQL_DATABASE: wp_site2
      MYSQL_USER: wp_user2
      MYSQL_PASSWORD: your_password2
    volumes:
      - ./mysql2:/var/lib/mysql

然后运行:

docker-compose up -d

🔐 注意事项:

  1. 防火墙设置:确保开放了 HTTP/HTTPS 端口(80/443)。
  2. 域名解析:两个域名都指向你的服务器 IP。
  3. 资源分配:如果服务器性能较弱,注意监控 CPU 和内存。
  4. 备份策略:两个网站应分别做好备份。

🧩 总结

方法 是否推荐 特点
虚拟主机配置(Nginx/Apache) ✅ 推荐 灵活、性能好,适合生产环境
子目录多站点(WordPress Multisite) ⚠️ 视需求而定 管理方便,但插件冲突风险高
Docker 容器化部署 ✅ 推荐 高度隔离,适合开发者

如需具体某一种方法的详细教程(比如用宝塔、Ubuntu+Nginx+PHP+MySQL 部署),可以告诉我,我可以继续帮你写完整教程!

未经允许不得转载:云计算导航 » 一个云服务器里部署两个wordpress网站?