运行apache httpd 2.2.11和fastcgi的debian lenny服务器在超过一定时间的时间内杀死请求。 我想禁用这个超时,使我能够debugging使用fastcgi启动的应用程序。
我已经在apache和lighttpd文档中进行了search,但找不到任何东西(只有像idle-timeout这样的选项,我认为这不是这种情况)。
任何人都知道如何控制这个超时? 谢谢。
看起来像你想要的FastCGI指令之一 :FastCGIServer,FastCGIConfig,或FastCgiExternalServer,具体取决于。 FastCGIConfig
影响所有的FastCGI应用程序; 另外两个是每个应用程序。 你会想要这些选项之一(检查文档,以确保哪个是适当的):
-appConnTimeout n
(0秒)
Unix:等待连接到FastCGI应用程序完成的秒数或0表示阻塞connect()应该被使用。 阻塞连接()s具有取决于操作系统的内部超时。 如果超时过期,则会导致SERVER_ERROR
。 对于非零值,这是用于写入由非阻塞connect()返回的文件描述符的select()中使用的时间量。 非阻塞连接()在许多平台上都很麻烦。 另请参阅-idle-timeout,它会以更便携的方式产生类似的结果。
Windows NT:基于TCP的应用程序如上所述。 命名的基于pipe道的应用程序(configuration了没有-port选项和dynamic应用程序的静态应用程序)成功使用这个值来限制等待连接的时间(即不是“麻烦”)。 默认情况下,这是90秒(mod_fastcgi.h中的FCGI_NAMED_PIPE_CONNECT_TIMEOUT
)。
-idle-timeout n
(30秒)
请求中止之前允许FastCGI应用程序不活动的秒数(logging错误LogLevel)。 只要FastCGI应用程序挂起连接,不活动计时器就会生效。 如果请求排队等待应用程序,但在此期间应用程序没有响应(通过写入和刷新),请求将被中止。 如果通信与应用程序完成但客户端不完整(响应被缓冲),则超时不适用。
-min-server-life n
(30)
应用程序在重新启动间隔之前必须运行的最小秒数增加到600秒。 服务器将获得3次尝试运行至less这个秒数。
在Apache中,你想要的指令是Timeout。 在一些发行版默认为300左右。 许多人已经开始降低这个缓解“Slowloris”型攻击。
Timeout 10
应该能够设置10分钟,如果你想:
Timeout 600