AWS应用程序负载均衡器:请求头或Cookie过大

10

AWS的新应用程序负载均衡器出现了错误:400 Bad Request,请求头或Cookie过大,awselb/2.0

如何在AWS ELB中增加大小。在经典负载均衡器中工作得很好。


Note: - AWS: 亚马逊网络服务(Amazon Web Services) - Application Load Balancer: 应用程序负载均衡器 - classic load balancer: 经典负载均衡器

您可能需要向AWS支持团队提交工单以解决此问题。 - Mark B
你能否检查一下是否是Web服务器本身生成了该错误并将其传递给ELB?400级别的错误很可能是由Web服务器而不是ELB生成的,例如404等。 - Rodrigo Murillo
我们在ELB后面有一个nginx。我已经尝试增加nginx中的large_client_header_buffers。此外,当我遇到此错误时,nginx上没有错误日志或访问日志。 - Kechit Goyal
2个回答

3

我们就同样的问题与 AWS 进行了沟通,我们发送的请求头大小总共为 33k,但其中一个请求头(授权)的大小为 30,而 ALB 接受的限制如下: - 每个请求行最多 16K - 单个请求头最多 16K - 整个请求头最多 64K


0

这个400错误是由nginx生成的。现在要么是你的nginx出了问题,要么是AWS ALB在幕后使用了nginx。

我之前遇到过类似的问题,并通过在我们的nginx配置中将large_client_header_buffer增加到4 512k来解决。如果您已经计算出URI或cookie的最大大小,并且它在您的large_client_header_buffer大小范围内,则必须向AWS提出支持请求。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接