Why does Apache stop serving one file after I request another?
March 10, 2005 8:35 PM
Subscribe
I have run into an unpleasant Apache concurrency problem, whereby the ongoing download of a large file spontaneously and silently hangs ~90 seconds after another request to the server is made. Error logging set at the highest level reveals nothing. Any idea what may be causing this? (Apache/2.0.52, Win2K Professional)
1. This problem doesn't occur when the server is accessed via localhost/internal IP.
2. The format of the large file is irrelevant. The method of downloading is irrelevant. Mozilla, IE, and wget all fail in the same manner. No error is thrown in any of these clients; the data just stops serving.
3. The size or type of the second file is also irrelevant. The problem occurs whether I request a text file, a binary, a PHP script, or even an indexed directory.
4. If I never make the secondary request, the primary request completes without error. This indicates that the problem is not a timeout issue.
5. Most of the settings in
httpd.conf are factory default.
6. I am behind a firewall, but the http port (334) is open to both tcp and udp traffic.
posted by Danelope to computers & internet (16 comments total)
1. The network is getting severed. This could be for a couple of reasons: your firewall could be doing it, or the Windows firewall on the box could be doing it. God knows why.
2. The thread servicing the request is dying. This is most likely. I'm not entirely sure how to check, but there's gotta be a active thread count somewhere. This could be because of a misconfiguration, a bug, or a disagreement between Windows and Apache.
3. For some reason, Apache thinks it's done. This is easy to tell - does the log report a successful request, with all bytes returned?
posted by maschnitz at 8:59 PM on March 10, 2005