关于 Tomcat 的报错:ClientAbortException

最近多个网友在 Tomcat 中使用 jetbrick-template 框架的时候,碰到了下面的异常。

关于 Tomcat 的报错:ClientAbortException_第1张图片

经过各种途径了解下来,可能引发 ClientAbortException 的原因:

1:服务器的并发连接数超过了其承载量,服务器会将其中一些连接Down掉
2:客户关掉了浏览器,而服务器还在给客户端发送数据(取消文件下载)
3:浏览器端按了Stop
4:服务器给客户端响应结果给防火墙拦截了
5:文件超大,浏览器接受超时,主动关闭了连接(下载大图片等)
6:Content-Length大小不正确,导致浏览器接受数据异常。

而目前看下来,实际情况上是第五种(显示超大图片),

在 tomcat/conf 目录下的 server.xml 文件内看到 内有一属性 connectionTimeout (default 20000),
如果页面反应慢的时候(网速不好或是通讯通讯异常引起),页面交互时间超出了该时间,
后台便会抛出 ClientAbortException: java.io.IOException 异常。
如果将 connectionTimeout 设大之后就不会再有该问题发生。

    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="100000"
               redirectPort="8443" />

你可能感兴趣的:(关于 Tomcat 的报错:ClientAbortException)