debian

Debian Nginx多站点配置示例

小樊
47
2025-09-22 14:22:11
栏目: 智能运维

在Debian系统上配置Nginx以支持多个站点是一个常见的任务。以下是一个基本的示例,展示了如何配置两个不同的站点。

前提条件

  1. 已经安装了Nginx:

    sudo apt update
    sudo apt install nginx
    
  2. 确保你有权限编辑Nginx配置文件。

配置步骤

1. 创建站点配置文件

每个站点通常会有一个单独的配置文件。你可以将这些文件放在 /etc/nginx/sites-available 目录下,并通过符号链接将它们链接到 /etc/nginx/sites-enabled 目录。

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

site1.com 文件中添加以下内容:

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

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

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

    error_page 404 /404.html;
    location = /404.html {
        root /var/www/site1.com;
    }
}

保存并关闭文件。

2. 启用站点

创建一个符号链接以启用该站点:

sudo ln -s /etc/nginx/sites-available/site1.com /etc/nginx/sites-enabled/

3. 测试Nginx配置

在重新加载Nginx之前,测试配置文件是否有语法错误:

sudo nginx -t

如果配置文件没有问题,你会看到类似以下的输出:

nginx: configuration file /etc/nginx/nginx.conf test is successful

4. 重新加载Nginx

重新加载Nginx以应用新的配置:

sudo systemctl reload nginx

5. 配置第二个站点

重复上述步骤来配置第二个站点。创建一个新的配置文件:

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

site2.com 文件中添加以下内容:

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

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

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

    error_page 404 /404.html;
    location = /404.html {
        root /var/www/site2.com;
    }
}

保存并关闭文件。

6. 启用第二个站点

创建一个符号链接以启用该站点:

sudo ln -s /etc/nginx/sites-available/site2.com /etc/nginx/sites-enabled/

7. 测试并重新加载Nginx

再次测试配置文件:

sudo nginx -t

如果没有错误,重新加载Nginx:

sudo systemctl reload nginx

DNS配置

确保你的域名(例如 site1.comsite2.com)已经正确指向你的服务器IP地址。你可以通过编辑DNS记录来实现这一点。

总结

通过上述步骤,你可以在Debian系统上配置Nginx以支持多个站点。每个站点都有自己的配置文件,并且可以通过符号链接启用。记得在每次修改配置文件后测试并重新加载Nginx。

0
看了该问题的人还看了