疑难解答“请求实体太大”(HTTP 413)错误消息返回给浏览器

我们的Web应用程序的用户偶尔会遇到以下错误消息:

Request Entity Too Large
The requested resource
/ourapp/ourlocation/
does not allow request data with GET requests, or the amount of data provided in the request exceeds the capacity limit.

我们检查了我们的日志,但是我们无法找到任何与上述错误相关的条目.在做了一些研究之后,我认为问题是请求的某些方面对于某些代理服务器来说太大而且代理将413错误返回到用户的Web浏览器. (但这只是猜测.)

你有什么想法搞清楚造成这个错误的原因吗?到目前为止,我已经使用Charles Web Debugging ProxyLiveHTTPHeaders来尝试观察给定页面的每个请求使用的字节数.

以下是一些可能有助于我进行故障排除的其他问题.

>允许的最大cookie大小是多少? 4096字节?
> GET请求的哪些部分与错误消息中引用的容量限制相对应?
> GET请求的最大大小是多少?

最佳答案
如果它是一个代理服务器返回错误,那么我希望有另一个响应头在那里有代理的名称.也许是“X-Via”或“Server”标题?

对你的问题… 1& 3是由代理服务器决定的. 2:我认为请求中的每个字节都会计入限制.

为了测试这个,我会创建一个控制台应用程序,以保持发送更大和更大更大的“GET”请求,直到它收到413回来.然后你可以让其中一个用户运行它,看看它是否可重现.

转载注明原文:疑难解答“请求实体太大”(HTTP 413)错误消息返回给浏览器 - 代码日志