Kubernetes NGINX ingress auth url返回404,但端点存在
添加注释:Kubernetes NGINX ingress auth url返回404,但端点存在,kubernetes,docker-for-windows,nginx-ingress,docker,Kubernetes,Docker For Windows,Nginx Ingress,Docker,添加注释: annotations: nginx.ingress.kubernetes.io/auth-url: http://my-auth-service.my-api.svc.cluster.local:8080 …对我的入口规则的响应导致入口控制器发出500响应(入口在没有它的情况下工作) 该服务存在,我可以通过ssh连接到入口控制器并将其卷曲,从而获得响应: curlhttp://my-auth-service.my-api.svc.cluster.local:8080生
annotations:
nginx.ingress.kubernetes.io/auth-url: http://my-auth-service.my-api.svc.cluster.local:8080
…对我的入口规则的响应导致入口控制器发出500响应(入口在没有它的情况下工作)
该服务存在,我可以通过ssh连接到入口控制器并将其卷曲,从而获得响应:
curlhttp://my-auth-service.my-api.svc.cluster.local:8080
生成一个200响应
我检查了入口控制器日志,但它说服务返回了404
。如果我可以卷曲到同一个URL,为什么它会返回404
2019/07/01 20:26:11 [error] 558#558: *443367 auth request unexpected status: 404 while sending to client, client: 192.168.65.3, server: localhost, request: "GET /mocks HTTP/1.1", host: "localhost"
我不确定要检查什么来确定问题。以下是您应该检查的选项:
proxy\u ssl\u server\u name
设置。它指示HTTPS是否使用SNI,默认设置为false
请让我知道这是否有帮助。FWIW,对于未来的读者-我遇到了同样的问题,在查看我的身份验证服务日志后,注意到nginx Ingres的请求在请求url中附加了一个/_external-auth-xxxxxx路径 以下是入口控制器在源代码中执行此操作的位置: 以及如何在我自己的身份验证服务(长生不老药/凤凰路线)中:
get "/_external-auth*encoded_nginx_auth_url", TokenController, :index