在Debian系统上配置Nginx以支持多个站点是一个常见的任务。以下是一个基本的示例,展示了如何配置两个不同的站点。
已经安装了Nginx:
sudo apt update
sudo apt install nginx
确保你有权限编辑Nginx配置文件。
每个站点通常会有一个单独的配置文件。你可以将这些文件放在 /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;
}
}
保存并关闭文件。
创建一个符号链接以启用该站点:
sudo ln -s /etc/nginx/sites-available/site1.com /etc/nginx/sites-enabled/
在重新加载Nginx之前,测试配置文件是否有语法错误:
sudo nginx -t
如果配置文件没有问题,你会看到类似以下的输出:
nginx: configuration file /etc/nginx/nginx.conf test is successful
重新加载Nginx以应用新的配置:
sudo systemctl reload nginx
重复上述步骤来配置第二个站点。创建一个新的配置文件:
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;
}
}
保存并关闭文件。
创建一个符号链接以启用该站点:
sudo ln -s /etc/nginx/sites-available/site2.com /etc/nginx/sites-enabled/
再次测试配置文件:
sudo nginx -t
如果没有错误,重新加载Nginx:
sudo systemctl reload nginx
确保你的域名(例如 site1.com 和 site2.com)已经正确指向你的服务器IP地址。你可以通过编辑DNS记录来实现这一点。
通过上述步骤,你可以在Debian系统上配置Nginx以支持多个站点。每个站点都有自己的配置文件,并且可以通过符号链接启用。记得在每次修改配置文件后测试并重新加载Nginx。