当前位置: 首页 > 知识库问答 >
问题:

JAVA -tomcat- Request标头太大

袁泰
2023-03-14
INFO: Error parsing HTTP request header
 Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.
java.lang.IllegalArgumentException: Request header is too large
    at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:512)
    at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:501)
    at org.apache.coyote.http11.InternalInputBuffer.parseRequestLine(InternalInputBuffer.java:171)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:996)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:623)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:722

我如何在我的spring web应用程序中解决这个问题?

我已经通过这个线程请求标题太大

共有3个答案

孙凌
2023-03-14

解决了!我使用的是HTTP GET而不是HTTP POST。从技术上来说,我发现如果URL长度超过2000个字符,HttpGet就会有问题。在这种情况下,最好使用HttpPost或拆分URL。浏览器的大小限制在2kb - 8kb之间

Tomcat: 请求标头太大

陶琦
2023-03-14

请求和响应 HTTP 标头的最大大小,以字节为单位指定。如果未指定,则此属性设置为 4096 (4 KB)。

为了避免获得错误解析HTTP请求头错误,您可以通过这样做增加以下值。

转到以下位置:$TOMCAT_HOME/conf/server.xml

服务器.xml更改 HTTP/1.1 连接器条目,并将 maxHttpHeaderSize 设置为“65536”(64Kb 字节),如下所示:

<Connector port="8080" maxHttpHeaderSize="65536" protocol="HTTP/1.1" ... />

或者

您可以使用POST方法,根据Tomcat,它最多可以携带2兆字节。

容器表单URL参数解析将处理的帖子的最大大小(以字节为单位)。可以通过将此属性设置为小于或等于0的值来禁用限制。如果未指定,则将此属性设为2097152(2兆字节)。

希望这些信息能帮助你...

颛孙庆
2023-03-14

问题是,HTTP标头中是否有任何限制?答案是否定的。没有限制,但Web服务器即使在POST请求中也限制了其传入请求标头大小,因此我们得到413(请求标头太大)。此限制包括请求行和标头字段。

http://httpd . Apache . org/docs/2.2/mod/core . html # limitrequestfieldsize

https://tomcat.apache.org/tomcat-5.5-doc/config/http.html

http://nginx.org/en/docs/http/ngx_http_core_module.html#large_client_header_buffers

http 标头值的最大值?

在我的例子中,我有SpringBoot 1.5.8并使用HTTP POST,但是我必须添加:

server.max-http-header-size=10000000 

在application.properties.

 类似资料:
  • 我有一个应用程序向微服务发送请求。在标题中有一个JWT标记,它变大了,我得到了这个错误 我发现您可以在yml配置文件中增加标头的最大允许大小 但我还是得到了同样的结果。我正在使用Spring 2.2.6

  • tomcat启动太慢(启动要起半个小时没有打断点)

  • 问题内容: 有没有一种方法不显示http响应的头文件。 例如 : 显示字段 服务器 时,它可能是一个不好的实践。我以为tomcat 有一种 生产模式 ,可以隐藏一些标题字段。 谢谢。 问题答案: 在server.xml文件中,添加到连接器以更改标头名称。我相信只是会删除标题或发送空白,但我并不乐观。 因此,您的连接器将如下所示: 请注意,在开发机器上进行更改时遇到问题。我认为这是Netbeans寻

  • 我有一个由Tomcat托管的静态网站。 如何为我的网站设置标头,例如: 它们都是静态文件,而不是任何servlet应用程序。

  • 我正在使用nginx和Firebug+FirePHP,当我试图加载页面时,我得到了一个错误: 我们在开发环境中记录了很多东西,我想这就是使用FirePHP时出现问题的原因。在这里阅读了类似的其他问题后,似乎有以下设置之一:

  • 我试图从Google Images搜索结果中保存一幅图像,但是当我在查询字符串参数中发送图像的src时,它给出以下错误: 由于我在本地机器上遇到这个错误,我可以测试你们所有人的想法。 注意:我在文件中将和设置为。但到目前为止没有运气。 感谢任何帮助。