怎么在一个轻量云服务器中安装多个网站?

在一个轻量云服务器中安装多个网站是完全可行的,通常通过 虚拟主机(Virtual Host) 配置来实现。以下是详细步骤和建议,适用于常见的 Linux 系统(如 Ubuntu/CentOS)和主流 Web 服务器(如 Nginx 或 Apache)。


一、准备工作

  1. 选择操作系统
    推荐使用 Ubuntu 20.04/22.04 或 CentOS 7/8。

  2. 安装 Web 服务器
    选择 Nginx 或 Apache(推荐 Nginx,性能更好)。

  3. 拥有多个域名(或子域名)
    如:site1.comsite2.comblog.yoursite.comshop.yoursite.com

  4. 开放端口
    确保云服务器安全组/防火墙开放 80(HTTP)和 443(HTTPS)端口。


二、使用 Nginx 安装多个网站(推荐)

1. 安装 Nginx

# Ubuntu/Debian
sudo apt update
sudo apt install nginx -y

# CentOS/RHEL
sudo yum install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx

2. 创建网站目录

为每个网站创建独立目录:

sudo mkdir -p /var/www/site1.com/html
sudo mkdir -p /var/www/site2.com/html

# 设置权限
sudo chown -R $USER:$USER /var/www/site1.com/html
sudo chown -R $USER:$USER /var/www/site2.com/html

3. 添加测试页面

# site1.com
echo "<h1>Welcome to Site1.com</h1>" | sudo tee /var/www/site1.com/html/index.html

# site2.com
echo "<h1>Welcome to Site2.com</h1>" | sudo tee /var/www/site2.com/html/index.html

4. 创建 Nginx 虚拟主机配置文件

创建 site1.com 的配置:

sudo nano /etc/nginx/sites-available/site1.com

内容如下:

server {
    listen 80;
    server_name site1.com www.site1.com;

    root /var/www/site1.com/html;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

创建 site2.com 的配置:

sudo nano /etc/nginx/sites-available/site2.com
server {
    listen 80;
    server_name site2.com www.site2.com;

    root /var/www/site2.com/html;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

5. 启用站点(创建软链接)

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/

⚠️ 注意:Nginx 默认可能没有 sites-enabledsites-available 目录(Ubuntu 有,CentOS 可能需要手动创建或使用 /etc/nginx/conf.d/)。

CentOS 用户建议:
直接把配置文件放入 /etc/nginx/conf.d/

sudo cp /etc/nginx/sites-available/site1.com /etc/nginx/conf.d/

6. 测试并重启 Nginx

sudo nginx -t  # 测试配置是否正确
sudo systemctl reload nginx

7. 域名解析

site1.comsite2.com 的 A 记录指向你的云服务器公网 IP。


三、使用 Apache 安装多个网站(备选)

1. 安装 Apache

# Ubuntu
sudo apt install apache2 -y

# CentOS
sudo yum install httpd -y

2. 创建网站目录(同上)

3. 配置虚拟主机

sudo nano /etc/apache2/sites-available/site1.com.conf
<VirtualHost *:80>
    ServerName site1.com
    ServerAlias www.site1.com
    DocumentRoot /var/www/site1.com/html
    ErrorLog ${APACHE_LOG_DIR}/site1_error.log
    CustomLog ${APACHE_LOG_DIR}/site1_access.log combined
</VirtualHost>

启用站点:

sudo a2ensite site1.com.conf
sudo a2ensite site2.com.conf
sudo systemctl reload apache2

四、可选:配置 HTTPS(使用 Let’s Encrypt)

使用 Certbot 为每个站点添加免费 SSL 证书:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d site1.com -d www.site1.com

Certbot 会自动修改 Nginx 配置,启用 HTTPS。


五、其他注意事项

  1. 资源限制
    轻量服务器(如 1C1G)建议运行 2~3 个轻量级网站(静态页、WordPress 等需优化)。

  2. 数据库共享
    多个网站可共用一个 MySQL/MariaDB,但建议使用不同数据库名和用户。

  3. 反向支持
    可为 Node.js、Python(Flask/Django)等应用配置反向,实现多类型网站共存。

  4. 使用宝塔面板(可选)
    如果不熟悉命令行,可安装 宝塔面板(BaoTa),图形化管理多个网站、数据库、SSL 等。

    wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

总结

步骤 说明
1 安装 Nginx/Apache
2 为每个网站创建独立目录
3 配置虚拟主机(server block / VirtualHost)
4 启用配置并重启服务
5 域名解析到服务器 IP
6 (可选)配置 HTTPS

✅ 完成后,访问不同域名即可看到不同网站内容。

如需进一步帮助(如部署 WordPress、Node.js 应用等),可继续提问!

未经允许不得转载:云计算HECS » 怎么在一个轻量云服务器中安装多个网站?