最近我们在Kubernetes Engine(GCP)上创建了一个集群,我们开始注意到一种奇怪的行为。
当通过负载均衡器向应用程序发出请求时,其始终接收状态代码200 ,即使应用程序返回错误代码(例如:401)。似乎群集的某个层正在拦截并替换它。
为了确定理论,我使用kubectl
的端口转发功能进行了其他测试,直接向POD发出请求。通过这种方式,我得到了正确的响应代码。
有没有人曾经遇到过这种情况,或者有任何想法我们如何更好地调试它并发现造成这种行为的原因?
修改
经过更多的测试后,我意识到了另一个有趣的事情。当浏览器发出请求时(作为简单的GET),它会显示状态代码200
。
但是当我使用curl
命令尝试相同的GET请求时,它会显示正确的代码。