轻量级服务器如何部署两个网站?

在轻量级服务器(如阿里云轻量应用服务器、腾讯云轻量服务器等)上部署两个网站是完全可行的,即使资源有限(如1核2G内存)。关键在于合理配置 Web 服务器(如 Nginx、Apache)使用虚拟主机(Virtual Host)反向来区分不同的网站。

以下是基于 Nginx + Linux(如 Ubuntu/CentOS) 的详细部署步骤:


✅ 前提条件

  • 一台轻量级服务器(已安装 Ubuntu/CentOS)
  • 两个域名(如 site1.comsite2.com),并已解析到服务器 IP
  • 已安装 Nginx(或 Apache,这里以 Nginx 为例)

🔧 步骤一:安装 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

📁 步骤二:创建两个网站的目录和内容

# 创建第一个网站目录
sudo mkdir -p /var/www/site1.com/html
echo "<h1>Welcome to Site 1</h1>" | sudo tee /var/www/site1.com/html/index.html

# 创建第二个网站目录
sudo mkdir -p /var/www/site2.com/html
echo "<h1>Welcome to Site 2</h1>" | sudo tee /var/www/site2.com/html/index.html

# 设置权限
sudo chown -R www-data:www-data /var/www/site1.com/html
sudo chown -R www-data:www-data /var/www/site2.com/html
sudo chmod -R 755 /var/www

📄 步骤三:配置 Nginx 虚拟主机

1. 创建第一个站点配置文件

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

2. 创建第二个站点配置文件

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

🔗 步骤四:启用站点(创建软链接)

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/

⚠️ 注意:如果使用 Ubuntu,sites-enabled 默认存在;CentOS 可能需要手动创建或直接包含在 nginx.conf 中。


🧪 步骤五:测试并重启 Nginx

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

🌐 步骤六:域名解析与访问

确保两个域名的 DNS 已正确指向服务器公网 IP。

然后在浏览器中分别访问:

  • http://site1.com
  • http://site2.com

应看到各自的内容。


✅ 可选:部署不同技术栈的网站(如 Node.js + 静态页面)

你还可以通过 反向 部署不同类型的应用:

示例:一个静态网站 + 一个 Node.js 应用

# Node.js 站点配置(如监听 3000 端口)
server {
    listen 80;
    server_name api.site2.com;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

这样可以在同一服务器上运行多个服务(如 Nginx 托管前端,Node.js 托管后端)。


📈 资源优化建议(轻量服务器)

  • 使用轻量级应用(如静态页面、PHP-FPM 优化)
  • 启用 Nginx 缓存和 Gzip 压缩
  • 关闭不必要的服务
  • 使用 pm2 管理 Node.js 应用
  • 定期监控资源:htopdf -hfree -m

✅ 总结

项目 方法
多网站支持 Nginx 虚拟主机
不同域名 server_name 区分
不同内容 不同 root 目录
不同技术 反向到不同端口

只要合理配置,即使是轻量级服务器,也能稳定运行多个网站。


如需 HTTPS,可使用 Let’s Encrypt + Certbot 为两个站点自动配置 SSL 证书。

需要我补充 HTTPS 配置吗?

未经允许不得转载:CLOUD技术博 » 轻量级服务器如何部署两个网站?