java.net.SocketTimeoutException: Read timed out 10
caused by :java.net.SocketTimeoutException:read time out. 展开
具体的解决方法如下:
修改tomcat配置文件server.xml,找到类似于下面配置:
<Connector port="8086" maxHttpHeaderSize="8192"。
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"。
enableLookups="false" redirectPort="8443" acceptCount="100"。
connectionTimeout="20000" disableUploadTimeout="true" /> 。
将上面的参数disableUploadTimeout值改为false即可。
很明显,出现这种问题的原因是读取文件超时,解决方法是将HTTP Keep-Alive Timeout这个参数设置地尽量大,但是有没有更好的解决方法,由于使用的服务器是tomcat,便可以通过修改服务器配置来解决该问题,具体的解决方法如下:
修改tomcat配置文件server.xml,找到类似于下面配置:
<Connector port="8086" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
将上面的参数disableUploadTimeout值改为false即可。
我的tomcat是6.0的,server.xml里没有你上面的那部分配置,只有
请问我需要修改哪里?
增加disableUploadTimeout属性。
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" disableUploadTimeout="true"/>
上传小文件是正常的,上传100M,200M的文件才会报这个错,还有我在本地测试上传大文件小文件都没问题,上传的很快,只是部署到服务器上才报这个错误。
上传小文件是正常的,上传100M,200M的文件才会报这个错,还有我在本地测试上传大文件小文件都没问题,上传的很快,只是部署到服务器上才报这个错误。
//设置超时
socket.setSoTimeout(60000);
2013-08-22
请问有什么解决方案吗