我正尝试使用以下命令设置一个到后端服务的路径重写入口:
- Kubernetes NGINX入口控制器(https://kubernetes.github.io/ingress-nginx),版本1.6.4(构建于Nginx 1.21.6之上)
- 在Docker桌面4.9.0和Kubernetes 1.24.0中运行
我已经使用Helm部署了我的服务和入口控制器,当我描述入口资源时,它看起来与this example完全一样,但有一些来自Helm的额外标签。
当我尝试使用curl(使用以/something
开头的路径)获取或POST到与regex匹配的任何资源(存在或不存在)时,我得到HTTP 400响应。登录我的后端服务显示它从未收到请求。当我尝试命中任何其他不存在的路径时,我得到来自nginx的HTTP 404,这是预期的。
我如何解决HTTP 400并让nginx将流量转发到我的服务?我猜我的nginx配置或入口控制器配置中缺少一些东西,但我在文档中没有看到任何明显的东西。
1条答案
按热度按时间xwbd5t1u1#
请尝试以下troubleshooting步骤,这些步骤将帮助您解决问题。
1.检查您的入口控制器是否已配置为遵守LB中的代理协议设置
2.检查是否已将代理协议指令添加到配置Map中。
3.如果问题仍未解决,则需要向配置Map添加额外的参数,如下所示:
连接解决类似问题的Git Issue。