Apache 1.3.x vs. 2.0.x: The Debate Returns
darthcamaro writes "internetnews.com is running a story about the new Apache 2.0.49 release. They actually got a hold of a pair of Apache Software Foundation members and got them to speak out about the 1.3.x vs. 2.0.49 debate! Also Apache Director Sander Striker told internetnews.com that he expects the Apache 1.3.30 release cycle to begin this week... I still use 1.3.x because I've been using the Apache 1.x series 'forever' and I've never found a solid reason to change. Also, as pointed out in this article, the official PHP documentation clearly states, 'Do not use Apache 2.0 and PHP in a production environment neither on Unix nor on Windows.'"
The PHP manual link posted is a direct link to one of the Canada mirror servers. The PHP site is mirrored around the world and it automatically selects your nearest mirror server.
:D
Use http://www.php.net/manual/en/install.apache2.php instead so that it can select the nearest mirror server and save us slashdotting this one Canadian server
(\(\
(^.^)
(")")
*This is the cute bunny virus, please copy this into your sig so it can spread
As another user pointed out, you don't need to have Apache 2 running as your webserver if you want to access Subversion. You can do one of the following:
-
Run Apache 1.x as your webserver on port 80, and then have Apache 2.x
running side-by-side as a separate server and have it listen on port
3690, the port that
IANA
has reserved for the Subversion protocol.
-
Instead of Apache, run the lightweight Subversion server
svnserve. It's quite simple to set up compared to Apache,
but can only grant blanket read/write permissions. Also, you can't
fine-tune
permissions on a per-directory basis like you can with Apache.
-
If you have pre-existing accounts on your system, you can tunnel
through ssh via the svn+ssh://host/path/to/repo pragma which will
authenticate itself via ssh and use the Unix file permissions on the
repository.
-
If you are the only one accessing your repository, you can even use
the
file:///path/to/repo pragma and forego a server altogether.
Each method has its benefits and disadvantages, you will want to evaluate all of them and choose one best suited to your business logic. Also, you definitely want to read over the upcoming O'Reily book Version Control with Subversion (see Chapter 6, "Server Configuration"). Good luck.Thomas
Even if PHP were 100% threadsafe, it generally uses too many libraries for it to be practical to make sure they're ALL threadsafe.
Actually the PHP core is 100 percent threadsafe now, it is only specifically the external libraries which aren't.
If you use PHP w/FastCGI support you wont run into these issues. If you only compile MySQL or Postgres support into your PHP you wouldn't either. But many users frequently also compile in other external libs for things like graphics generation, url manipulation, etc and its these libraries which aren't thread safe and specifically can cause problems in high use environments.
While you could specifically use PHP and Apache2 in total prefork mode, this basically makes it run exactly like the 1.3 series, so then the real question is what's the point of upgrading at all and not just sticking w/1.3?
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.