一个云服务器两个网站怎么搭建?

云计算

一个云服务器搭建两个网站的完整指南

结论先行:在单个云服务器上搭建两个网站是完全可行的,主要通过配置虚拟主机(Virtual Host)实现。核心步骤包括:域名解析设置、Web服务器配置(如Nginx/Apache)、网站文件部署。以下是详细操作流程。


一、准备工作

  1. 云服务器基础要求

    • 已购买云服务器(如阿里云、腾讯云等),建议配置≥1核2G。
    • 服务器已安装操作系统(推荐Linux,如Ubuntu/CentOS)。
  2. 域名与解析

    • 注册两个域名(如 site1.comsite2.com)。
    • 在DNS解析服务商处,将两个域名解析到同一服务器IP地址
  3. 环境部署

    • 安装Web服务器(Nginx或Apache)和PHP/数据库(如MySQL)。
      # Ubuntu示例(Nginx + PHP + MySQL)
      sudo apt update
      sudo apt install nginx mysql-server php-fpm php-mysql

二、Nginx配置(推荐方案)

核心原理:通过Nginx的server块区分不同域名的请求,指向不同网站目录。

  1. 创建网站目录

    sudo mkdir -p /var/www/site1/public_html
    sudo mkdir -p /var/www/site2/public_html
  2. 配置虚拟主机文件

    • 为每个站点创建独立的配置文件(路径:/etc/nginx/sites-available/):
      • site1.com.conf 内容:
        server {
        listen 80;
        server_name site1.com www.site1.com;
        root /var/www/site1/public_html;
        index index.html index.php;
        }
      • site2.com.conf 同理,修改server_nameroot路径。
  3. 启用配置并重启Nginx

    sudo ln -s /etc/nginx/sites-available/site1.com.conf /etc/nginx/sites-enabled/
    sudo ln -s /etc/nginx/sites-available/site2.com.conf /etc/nginx/sites-enabled/
    sudo systemctl restart nginx

三、Apache配置(备选方案)

  1. 启用虚拟主机模块

    sudo a2enmod rewrite
    sudo systemctl restart apache2
  2. 配置虚拟主机

    • 编辑 /etc/apache2/sites-available/000-default.conf,添加:

      <VirtualHost *:80>
       ServerName site1.com
       DocumentRoot /var/www/site1/public_html
      </VirtualHost>
      
      <VirtualHost *:80>
       ServerName site2.com
       DocumentRoot /var/www/site2/public_html
      </VirtualHost>
  3. 重启Apache生效

    sudo systemctl restart apache2

四、验证与常见问题

  1. 测试方法

    • 在浏览器分别访问两个域名,检查是否显示对应网站内容。
    • 若本地测试,可修改hosts文件临时绑定域名到服务器IP。
  2. 常见问题

    • 403错误:检查网站目录权限(chmod 755 /var/www)。
    • 域名未生效:DNS解析可能需要等待(最长48小时),或检查Nginx/Apache日志(/var/log/nginx/error.log)。

五、进阶优化(可选)

  1. HTTPS加密

    • 使用Let’s Encrypt免费证书:
      sudo apt install certbot python3-certbot-nginx
      sudo certbot --nginx -d site1.com -d site2.com
  2. 资源隔离

    • 通过Docker容器隔离两个网站环境,提升安全性。

总结:在单台云服务器部署多网站的关键是虚拟主机配置域名解析。Nginx/Apache均可实现,推荐Nginx因其轻量高效。完成后,可通过HTTPS和容器化进一步优化。

未经允许不得转载:CLOUD云枢 » 一个云服务器两个网站怎么搭建?