|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2005-03-31 16:13 UTC] php-bugs at lists dot php dot net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Thu Oct 30 15:00:01 2025 UTC |
I have around 1600 virtualhosts configured under Apache 1.3.12. The machine has 1 gig of ram, and the following limits are set in /etc/system: * set hard limit on file descriptors set rlim_fd_max = 16384 * set soft limit on file descriptors set rlim_fd_cur = 16384 (other settings have been tried as well) Without PHP compiled in, there is (and hasn't been for over 2 years) no problem. With PHP compiled into apache (as a module), I get "Document contains no data" when trying to open a php file (containing something as simple as echo("blah"); or phpinfo();) If I comment out the transferlog directives (there's one for each virtualhost) it works. If I add in only a few virtualhosts, it works. Add them all, it bombs. So, it would seem that I'm running out of file descriptors, but it doesn't happen without PHP compiled in. Is PHP using -THAT- many more file descriptors? I've even bumped rlim_fd_max = 50000 and still no go. I've tried raising it by using ulimit -n as well. Is this a solaris 2.x problem only? I've just ordered Solaris 8 to see if it will alleviate this problem. Additionally, I've trussed a single process (httpd -X) apache, and seen nothing strange. It's also not dumping core. And no, I do not want to run another apache on a different port, or use less virtualhosts. If anyone has any idea where this limit is being hit, I'd like to know. More: I've tested the same setup under Linux 2.2.15 (on Intel) with the same resource limits, and it worked fine (PHP compiled in, of course). Thank you.