Originally Posted by eu4ria
There may be a limit on the server for the maximum simultaneous connections per client. While downloading the file they are using a connection, as soon as it is done they are able to open a new connection back to the server.
This is also what I would assume. Its a limitation imposed by the web service, not by PHP.
HTTP is in itself stateless, so it wouldn't realize that the user is the same. If you're on a shared host, specifically a free one, they may be saving themselves throughput by imposing 1 connection limitations per domain. If you're paying for it, I'd find a new host (if this what's causing the problem).
I've never had a problem with PHP causing a conflict like this before. Even CGI and CLI versions will spawn new processes. And if you're on *nix host, even ram won't be an issue; I used to host several sites on a 32MB optimized web server, and I had better throughput than I do now on my windows server.