ID: 27583 Updated by: [EMAIL PROTECTED] Reported By: stewart dot james at vu dot edu dot au Status: Open Bug Type: Documentation problem Operating System: Any PHP Version: Irrelevant New Comment:
We are not talking about just Apache2 here. We are talking about Apache2+an MPM+PHP+3rd Party Libs. The folks at apache.org are only concerned with Apache2 itself, and for serving up static files it is better than Apache1 in many respects. However we have to worry about a lot more stuff here. In fact, we couldn't care less about serving up static files. The main issues as I see them are: 1. Thread safety issues. - It is very difficult to track down threading problems and we don't have decent tools to help us. - The thread safety of many 3rd party libraries are unknown quantities and can depend on the OS, libc and even compile flags. - Many distributions seem to ship with the Worker MPM as the default and that is the MPM that gets the most attention. This is a hybrid multi-process, multi-threaded MPM. 2. You can eliminate the threading problem by running the prefork MPM which effectively makes Apache2 behave just like Apache1 in the way it forks processes and serves one request at a time per process. Issues here: - Apache2 itself is rather fringe still. It has approximately a 5% marketshare vs. 65% for Apache1 at the time of this and out of that I would guess the majority are running the Worker MPM. So we are talking about a fringe MPM in a fringe server. This means it has not had anywhere near the attention from people running large production web server farms that it needs for me to comfortably say that this is a solid piece of code with all the kinks worked out. - The benefits of moving to Apache2+prefork are questionable. The new filter API would be one of the benefits, but it still has some issues and by default we run PHP as a handler, not a filter currently. You can optionally run it as a filter but people have had problems with that. Until such a time when enough clueful PHP people think there are enough realworld useful features in Apache2-prefork or even Apache2-threaded to actually sit down and bang away at PHP and the majority of the PHP extensions under Apache2. Or if enough regular users report back that they tried it and had absolutely no problems then we will change our reccomendation, but for the time being I don't think that we in good faith can tell users that Apache2+PHP is something they should be putting into production. Previous Comments: ------------------------------------------------------------------------ [2004-03-13 17:39:04] stewart dot james at vu dot edu dot au I read 27323. As a admin I plead ignorant to apache2 at the moment. I resolved to worry about it one the apache group were pushing it as the best. Last week I hit the apache website - curious as to where they were up to and found that their site indicates that apache2 is the best option. Their download pages say "apache2 is the best available version" and "also available apache1.3" I bring this up as 27323 and the apache group obviously have a difference of opinion on apache2, perhaps the difference is only when apache2 is running threaded? In which case perhaps php and apache2 would be OK in production on non threaded apache2 servers? Which of course should be reflected in the documentation :) :) Stewart ------------------------------------------------------------------------ [2004-03-13 17:10:08] [EMAIL PROTECTED] This was already discussed in #27323. But Derick, what do you think that needs to be changed in the documentation? I may add whatever you decide that's worth change. ------------------------------------------------------------------------ [2004-03-13 06:07:27] [EMAIL PROTECTED] But if we do that then we can expect much more useless bugreports, so the current statement is safe, we just need to clarify it. ------------------------------------------------------------------------ [2004-03-12 20:10:13] [EMAIL PROTECTED] Is that really our position on the issue, anyway? The PHP core is perfectly stable on Apache 2 -- It's just a few extensions that cause trouble... We should probably be saying that instead of just rejecting Apache 2 entirely. ------------------------------------------------------------------------ [2004-03-12 19:43:58] stewart dot james at vu dot edu dot au Description: ------------ www.php.net/install.apache2 says not to use php4 + apache2 in a production environment, however, the reason for it is not stated. A search of the bug database for apache2 did not enlighten the statement either. Statements such as this would benefit from qualification immediately below it allowing easy access to the reasons why apache2 should not be used with php4 in production. Expected result: ---------------- Enlightenment as to why apache2 and php4 is bad Actual result: -------------- Frustration as enlightenment was not achieved ;) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=27583&edit=1