请查看以下nginx.conf
内容,该内容存在于我的天蓝色内容中:
server {
listen 80 default_server;
listen 443 ssl default_server;
ssl_certificate /etc/nginx/secrets/default;
ssl_certificate_key /etc/nginx/secrets/default;
server_name _;
server_tokens "on";
access_log off;
location / {
return 404;
}
}
include /etc/nginx/conf.d/*.conf;
查看上面的内容我发现我的入口内容存在于conf.d文件夹中。
如果我们看到,位置/出现在我的其他配置之前。这是否意味着它总是因为这个原因而返回404?
答案 0 :(得分:1)
location
设置允许您配置nginx如何响应服务器内资源请求。
您可以拥有多个位置指令。
返回:假设server_name
有一个example.com
条目,location /
指令将确定此请求会发生什么。在您的情况下,它将return 404
。由于每个请求都可以映射到location /
,因此nginx将始终以404响应。
这里有你的默认后端conf。默认后端是一个处理所有URL路径的服务。当Ingress Controller无法根据映射规则成功路由请求时,它返回404。
location /
出现之前(如出现的顺序)其他配置不是问题。
default-http-backend
并非旨在面向外部 - 它仅设计为404,因此Ingress控制器可以为无Pod服务提供普遍/dev/null
流量。
请参阅:https://docs.microsoft.com/fi-fi/azure/aks/kubernetes-walkthrough