在Nginx中配置默认站点(即当没有匹配到其他虚拟主机时使用的站点)有几种方法,下面我将详细介绍最常用的配置方式。
这是最推荐的方法,通过在server块中添加default_server
参数来指定默认站点:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _; # 使用下划线作为通配符
root /var/www/default;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
关键点:
- default_server
参数指定这是默认的服务器块
- server_name _
使用下划线作为通配符,匹配所有未指定的域名
- 确保这个配置是Nginx配置文件中第一个被加载的server块(通常放在sites-available/default
文件中)
在Ubuntu/Debian系统中,Nginx通常会有一个默认的配置文件:
编辑默认配置文件:
sudo nano /etc/nginx/sites-available/default
修改其中的server块配置,确保包含default_server
参数
创建新的配置文件:
sudo nano /etc/nginx/sites-available/default-site
添加配置内容(同方法一)
创建符号链接到sites-enabled目录:
sudo ln -s /etc/nginx/sites-available/default-site /etc/nginx/sites-enabled/
删除或禁用其他默认配置
配置完成后,执行以下操作:
测试Nginx配置是否正确:
sudo nginx -t
重载Nginx使配置生效:
sudo systemctl reload nginx
default_server
nginx
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 444;
}
希望这些信息对你有帮助!如果你需要针对特定场景的配置或有其他问题,请随时提问。