![Nginx:单个服务器下子域名的位置指令](https://linux22.com/image/562648/Nginx%EF%BC%9A%E5%8D%95%E4%B8%AA%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8B%E5%AD%90%E5%9F%9F%E5%90%8D%E7%9A%84%E4%BD%8D%E7%BD%AE%E6%8C%87%E4%BB%A4.png)
我有一个这样的服务器配置
server {
listen 80;
server_name www.site.com;
server_name stage.site.com;
server_name nagios.site.com;
location ~* (.*)nagios {
auth_basic "Admin";
auth_basic_user_file /etc/nginx/.htpasswd;
}
当我尝试将位置指令应用到子域时,它似乎不起作用。
我不想重复服务器。这需要很多代码。
我该如何纠正这个问题?
答案1
当我尝试将位置指令应用到子域时,它似乎不起作用。
location
指令用于 URI,而不是子域。
我不想重复服务器。这需要很多代码。
但它是正确的执行此操作的方法。$http_host
使用if
指令检查不推荐, 任何一个。