I repeated a similar test on my apache 1.3.33 and it works - I see the following lines in the error_log during timeout: ............read script header timed out Confirmed with ps that the script is actually killed. Also confirmed from the sources on where this error_log line originates from - ap_script_scan_header_core() ..leading to here from a sequence of calls from mod_cgi.so ; the first attempt to read headers from the cgi app. Repeated the test in apache 2.2.0 (with mpm prefork) and I get a similar output during timeout: .....Timeout waiting for output from CGI script ......... As per 1.3.33 sources, if SIGTERM fails, it even tries SIGKILL (9). Ravi On 10/14/06, Steve Swift <steve.j.swift@xxxxxxxxx> wrote:
Well, I wrote a "timeout" CGI especially to go into a loop. It's still running after 720 seconds on my 2.0.46+ server under linux. Timeout is set to 300. I never saw looping CGI's terminated under version 1 either. With four processors in our system we sometimes don't notice looping CGI scripts for a few days! On 13/10/06, Ravi Menon < jravimenon@xxxxxxxxx> wrote: > In the apache 1.3.x on Linux that I am using, apache does send a SIGTERM > when the Timeout value has reached. The code is here: > > apache_1.3.33/src/main/alloc.c:free_proc_chain() > > This is called from ap_clear_pool() which is done at the end of > request cycle, or > during hard timeouts. > > The logic here also covers runaway cgi apps. > > Didn't confirm if the same exists in apache 2x but I would be > surprised if this functionality was removed. > > Ravi > > > > On 10/11/06, Steve Swift < steve.j.swift@xxxxxxxxx> wrote: > > As far as I know Apache doesn't send Sigterm to a running CGI. This has > > nothing to do with the Timeout directive. > > A couple of weeks ago I asked the opposite question: "How can I timeout a > > CGI that is hung/looping?" and the answer I got, from trusted sources was > > that it cannot be done with Apache alone, but would require an external > > monitor. > > > > Something else on your system is doing this. > > > > On 11/10/06, Nguyen, Nguyen Vu <nnguyen@xxxxxxxxxxxxxxxxxxxxxx > wrote: > > > Hi guys, > > > > > > As far as I know the Timeout directive does control the amount of time a > > CGI > > > has before receiving a SIGTERM. However my CGI still receives a SIGTERM > > > after what appears to be a random amount of time that is much less than > > what > > > I have set in the Timeout directive. The client side still has the > > > connection to the CGI when it receives the SIGTERM. So I'm wondering under > > > what other circumstances does apache send SIGTERM to a CGI? Any help is > > very > > > much appreciated. > > > > > > Thanks. > > > > > > > > > > > --------------------------------------------------------------------- > > > The official User-To-User support forum of the Apache HTTP Server Project. > > > See <URL:http://httpd.apache.org/userslist.html> for more > > info. > > > To unsubscribe, e-mail: > > users-unsubscribe@xxxxxxxxxxxxxxxx > > > " from the digest: > > users-digest-unsubscribe@xxxxxxxxxxxxxxxx > > > For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx > > > > > > > > > > > > > > -- > > Steve Swift > > http://www.swiftys.org.uk > > --------------------------------------------------------------------- > The official User-To-User support forum of the Apache HTTP Server Project. > See <URL: http://httpd.apache.org/userslist.html> for more info. > To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx > " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx > For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx > > -- Steve Swift http://www.swiftys.org.uk
--------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx