2

I'm sporadically getting Apache 70007 timeout errors from (I think) Perl CGI scripts. I thought the problem was my scripts were exceeding the Apache's TimeOut value, but I wrote a sleep script that gives a different error on Apache timeout.

Can anyone shed some light on this error?

--- My test ---

[Mon May 13 13:46:45 2013] [warn] [client X.168.X.43] Timeout waiting for output from CGI script /var/www/cgi-bin/sleep.pl [Mon May 13 13:46:45 2013] [error] [client X.168.X.43] Premature end of script headers: sleep.pl

--- Actual error ---

[Mon May 13 13:46:52 2013] [error] [client X.182.X.175] (70007)The timeout specified has expired: Error reading request entity data [Mon May 13 13:47:00 2013] [error] [client X.0.X.27] (70007)The timeout specified has expired: Error reading request entity data

1
  • Your test script does not send HTTP headers.
    – Daniel Beck
    May 15, 2013 at 19:02

3 Answers 3

0

It sounds like your TimeOut value is too small. It should be set to at least 30.

2
  • TimeOut actually defaults to 60, but as you see I tried to induce the timeout error by sleeping 120 and I get a different error. This clearly points out TimeOut does not induce the 70007 it induces premature end of script.
    – Tim Nelson
    May 15, 2013 at 19:38
  • In fact even if I set $| = 1 so that the response header is sent I don't get the 70007, so it must be something else.
    – Tim Nelson
    May 15, 2013 at 19:45
0

Every time we saw this, but this error is from the database which queries are running behind it, either its indexing is not done properly or that query is slow, please check the error will never come again

0

You may see these if someone is running a pentest scan against the host. The scanner is disconnecting the request before the server has a chance to respond. The pentest scanners typically have a short timeout so they can continue to the next attack URL.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .