【发布时间】:2019-01-22 11:31:16
【问题描述】:
我遇到了一个奇怪的问题,NGINX 间歇性地返回 400 并显示错误日志
2018/08/15 07:08:38 [错误] 3794#3794: *961526 客户端发送了无效的分块正文,客户端:10.$$.$$.$$,服务器:$$.api.$$ .com,请求:“PUT /v2/$$ HTTP/1.1”,主机:“$$.api.$$.com”
这个错误什么时候出现?
关于我如何提出请求的一些背景信息:
我正在使用 org.apache.http.impl.client.CloseableHttpClient 进行 http 调用。
问题是问题不一致。我从我的本地尝试并且代码总是有效,但是当我们从 jenkins 运行相同的命令时,它对于特定的有效负载失败。我尝试在本地使用相同的 java 版本,它总是有效。更奇怪的是,有时甚至来自同一个詹金斯它也有效。
有人指点吗?
【问题讨论】:
-
我们遇到了类似的问题。你已经能够解决了吗?您是否在管道的任何部分使用 Netty?您是否有客户端服务器和主机服务器的版本(以及它们正在运行的服务器是什么......)?我们的直觉是它是 Netty,我们想向 project reactor 提交一些东西......您的输入将有助于分类
-
是的,正如@RankWeis 建议的那样,nginx、apache http client+core、java 和 netty(如果适用)的版本可能是相关的。
-
@RankWeis 请查看我的答案,如果您需要更多详细信息,请告诉我。