Jeff Trawick asked a well-directed pair of questions: > What I think is useful information to people who want PHP+Apache-2.0 is: > > a) is PHP not production ready with Apache 2.0 because it was not high > enough priority for PHP to be tested? > > or > > b) is PHP not production ready with Apache 2.0 because Apache 2.0 must > be fixed before such a thing is even possible? > > I see more comments implying b) than a). As such, it seems that anybody > that wants to hack PHP to work better with 2.0 is wasting their time.
The comments implying b) have to do with the problems with implementing PHP as a filter versus PHP as a handler. The discussion on that front has been positive and I'm hopeful that a solution can be reached. On to a). The PHP developers have screamed quite loudly about the failings of Apache2, when, in fact, the largest reason why mod_php will not work with Apache2 is because it is not a priority for PHP developers. I wrote: > It's trivial to make a library thread safe by serializing access to the > functions of the non-thread-safe library. and Rasmus' irked response was: > Do you really think we don't know this? I do think you know this. I was making a point and I thank you for your help in doing so. Rasmus continued: > It boils down to where our time is best spent. Yes, we can come up with > all sorts of tricks to sorta-kinda-almost make this work. But why? What > do we gain? At this point most of us feel that we really don't gain > anything. I respectfully request that PHP developers own up to the fact that while there are issues with Apache2 and PHP as a filter/handler, that the main reason why mod_php is not production ready with Apache2 is because of the PHP developer non-interest in fixing the PHP core non-reentrancy (use of thread local storage) and because PHP uses many non-thread-safe third party libraries and does not think it worth the time to protect accesses to those non-thread-safe functions. If properly documented, you might find some people willing to tackle the problem rather than finger pointing at the Apache developers. Currently, PHP propaganda implies that the reason is the ASF's fault. Yes, PHP is the #1 module in Apache, but Apache installations generally serve content in addition to PHP. The new threading models make a huge difference in performance on some platforms for that additional content and it is egomaniacal to refuse to acknowledge that people use Apache for more than just PHP. Will a possibly slower Apache2 PHP hurt more than help in such environments? I don't know and make no claims. My aim here is to clarify the issues to answer Jeff's question. Personally, my servers run PHP as CGI. Works well. Thank you. Kudos for safe_mode and safe_mode_gid. -Glenn Please direct flames to gs-apache-dev at gluelogic.com. They will be read and responded to privately.
