今天对项目进行维护,突然发现修改内容后不能保存,前端页面显示白屏,后台tomcat在debug模式下出现:Error parsing HTTP request header Note:further occurrences of HTTP header parsing error,于是百度了一下子
产生这个错误的原因是:
1.tomcat服务器的header缓存不足
这个问题很好解决,只需要在tomcat的server.xml文件中设置增加maxHttpHeaderSize字段即可:
<Connector URIEncoding="UTF-8" port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
useBodyEncodingForURI="false"
enableLookups="false"
connectionTimeout="20000"
redirectPort="8443" maxHttpHeaderSize="你想要的大小"/>
如:
<Connector port="8080" executor="tomcatThreadPool"
protocol="HTTP/1.1"
maxThreads="1000"
maxHttpHeaderSize="8192"
minSpareThreads="100"
maxSpareThreads="200"
acceptCount="1000"
maxConnections="1000"
connectionTimeout="30000"
keepAliveTimeout="15000"
maxKeepAliveRequests="1"
tcpNoDelay="true"
redirectPort="8443"
enableLookups="false"
URIEncoding="UTF-8"/>
仅此而已
2.第二原因是表单的提交造成的
更改表单的method属性,由get变为post即可。