It seems to be not the 'core' of PHP, but several of the modules that go with it aren't thread-safe.
Apparently, this really only shows up in the real world under heavy usage, and using the prefork "multi-processing module" should reduce or eliminate the potential problems. I think.
It SOUNDS like the warnings about not using PHP with Apache2 is mainly overcautiousness - every time one of these stories comes up, a few people pop up and say it's working fine for them, and I don't remember seeing anyone pop up and say "yeah, every time I get more than (x) connections at a time everything fails" or anything of the sort.
I'm planning to try it out myself sometime soon...
I known quite some cases where PHP/Apache2 won't really work together since Apache2 begins to segfault, but I was never able to reproduce it mysqlf, all I have are segfaults in the logfiles - and I can't run the whole Apache on my production system within gdb to see where the problem is. I've you ask the PHP guys for help for such a problem, they aren't very cooperative and tell that Apache 2 is not supported...
Just to be the voice of dissention... I'm apparently the one person in the world for whom the PHP+Apache2 combo doesn't actually work right. Yes, it mostly works, but I'm constantly having to close out the windows that pop up when a thread goes boom. Yes, I am running it on XP (with all of the necessary service packs and hotfixes), but that shouldn't invalidate the fact that PHP+Apache2 isn't production-quality stable. And yes, I am 100% sure it is PHP causing the problem, as the errors only started when I started using PHP, and they increase as I convert more and more of my site to PHP.
Now, if I'm getting all these errors, why am I using it? Because it's still better than the alternative. When any DLL goes pop under IIS you get really flaky and esoteric things that start happening. Under Apache2 it just nukes a thread, which Apache2 diligently respawns and goes on with life. I can deal with clicking OK on a dozen windows a day if it means I don't ever have to worry about restarting my web service.
PHP+Apache2 isn't perfect, but it's good enough for what I need.
It's not better than the alternative, using Apache1.
You're very dumb. Either use Apache1, or if you hav some amazing adversity to it (you didn't mention any reaons why you are not using it) then at least edit the source of Apache2 so that it doesn't popup the windows of which you complain.
apache 2 and php work perfectly, i did compile apache with prefork, so as to let apache 2 work the same way old apache did. Also because most linux distros need a lot a tweaking to get a good threaded linux version running.
Again, i'm using apache2 and php in a production env for more than a year now, looks great to me.
General Custard.
"There are things that are so serious that you can only joke about them"
- Heisenberg
I've been running PHP/Apache 2 for a while... (Score:4, Interesting)
...and haven't noticed any problems. Why is this advised against?
Re:I've been running PHP/Apache 2 for a while... (Score:5, Interesting)
It seems to be not the 'core' of PHP, but several of the modules that go with it aren't thread-safe.
Apparently, this really only shows up in the real world under heavy usage, and using the prefork "multi-processing module" should reduce or eliminate the potential problems. I think.
It SOUNDS like the warnings about not using PHP with Apache2 is mainly overcautiousness - every time one of these stories comes up, a few people pop up and say it's working fine for them, and I don't remember seeing anyone pop up and say "yeah, every time I get more than (x) connections at a time everything fails" or anything of the sort.
I'm planning to try it out myself sometime soon...
Re:I've been running PHP/Apache 2 for a while... (Score:3, Interesting)
Re:I've been running PHP/Apache 2 for a while... (Score:3, Funny)
Too funny!
Re:I've been running PHP/Apache 2 for a while... (Score:1)
Has nothing to do with MySQL, but with myself.
Re:I've been running PHP/Apache 2 for a while... (Score:3, Funny)
Re:I've been running PHP/Apache 2 for a while... (Score:4, Informative)
Now, if I'm getting all these errors, why am I using it? Because it's still better than the alternative. When any DLL goes pop under IIS you get really flaky and esoteric things that start happening. Under Apache2 it just nukes a thread, which Apache2 diligently respawns and goes on with life. I can deal with clicking OK on a dozen windows a day if it means I don't ever have to worry about restarting my web service.
PHP+Apache2 isn't perfect, but it's good enough for what I need.
Re:I've been running PHP/Apache 2 for a while... (Score:0)
You're very dumb. Either use Apache1, or if you hav some amazing adversity to it (you didn't mention any reaons why you are not using it) then at least edit the source of Apache2 so that it doesn't popup the windows of which you complain.
It's open source for god's sake.
Re:I've been running PHP/Apache 2 for a while... (Score:0)
Re:I've been running PHP/Apache 2 for a while... (Score:1)
Re:I've been running PHP/Apache 2 for a while... (Score:0)
apache 2 and php work perfectly, i did compile apache with prefork, so as to let apache 2 work the same way old apache did. Also because most linux distros need a lot a tweaking to get a good threaded linux version running.
Again, i'm using apache2 and php in a production env for more than a year now, looks great to me.
General Custard.