在AWS下使用bitnami tomcat堆栈(Apache + Tomcat)。到目前为止,一切都很完美。 Webapps中的一项新功能需要超过2分钟的等待时间才能完成。但在执行停止之前,Apache发送HTTP-500错误。当检查tomcat控制台时,它同时显示以下错误。
»2016年5月19日16:13:27.370周五5月19日16:13:27 + 0530 2016, (FrameworkServlet.java:984)DEBUG:无法完成请求, ClientAbortException:java.net.SocketException:断开管道 org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:413) 在 org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:480) 在org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:366) 在 org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:438) 在 org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:426) 在 org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:91)
尝试多个样本请求时发现在等待60秒后收到了HTTP-500。
Tomcat server.xml
<Connector port="8099" protocol="AJP/1.3" redirectPort="8443" connectionTimeout="300000" />
Tomcat.conf
<LocationMatch "^/(?!(phpmyadmin([^a-zA-Z0-9]|$))).*$">
ProxyPass ajp://localhost:8009 connectiontimeout=36000 timeout=36000
</LocationMatch>
检查linux的超时框,发现它是2小时。 它可能是Apache或Apache-Tomcat连接器超时问题。 bitnami堆栈中的这些配置在哪里更改它。
答案 0 :(得分:0)
如果找到original/extra/httpd-default.conf
文件,请根据需要编辑以下内容以增加超时并重新启动apache
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 60
或编辑httpd.conf
文件,将上述行添加到文件末尾,然后重新启动apache