Slashdot Mirror


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.'"

9 of 95 comments (clear)

  1. PHP link is for Canada Mirror by a.koepke · · Score: 4, Informative

    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.

    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 :D

    --


    (\(\
    (^.^)
    (")")
    *This is the cute bunny virus, please copy this into your sig so it can spread
  2. Arrrghhh!!! My eyes! by Anonymous Coward · · Score: 5, Funny

    Purple and mustard yellow? What the hell were you people thinking?!

  3. I've been running PHP/Apache 2 for a while... by leviramsey · · Score: 4, Interesting

    ...and haven't noticed any problems. Why is this advised against?

    1. Re:I've been running PHP/Apache 2 for a while... by Dr.Dubious+DDQ · · Score: 4, 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...

    2. Re:I've been running PHP/Apache 2 for a while... by sumbry · · Score: 5, Informative

      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?

    3. Re:I've been running PHP/Apache 2 for a while... by Knowbuddy · · Score: 4, Informative

      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.

  4. I run apache 2 and PHP in production by Anonymous Coward · · Score: 4, Interesting

    I did this after figuring out that no one really knew why you shouldn't. I haven't had any problems. Occasionally someone cites that quote on the comp.lang.php newsgroup, but they never have any reasons to back it up. This is 3 machines, 5 websites between them, that see daily use of an extensive custom written CRM app that is all in PHP. MySQL is the database.

  5. Re:1.3.29 by nthomas · · Score: 4, Informative
    The one thing that is pushing me to upgrade is Subversion. According to Subversion's website, you need a 2.X binary to run the Apache plugin. This may be the first really big push for 2.X.

    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

  6. Cool names by Hard_Code · · Score: 4, Funny

    Ransom Love
    Havoc Pennington
    Sander Striker

    Geez, what books were your parents reading you to give you such cool names.

    I think I'll change my name to "Gusto McAction".

    --

    It's 10 PM. Do you know if you're un-American?