Slashdot Mirror


Apache 2.0 Goes Gold!

The Apache Software Foundation's Apache HTTP Server, version 2.0.35, has now been released for General Availability. You can find the official announcement, and download the server, from their website. Be sure to try a mirror first. Congratulations to the HTTP Server Project for getting the final release out. If you are wondering about it being usable in a production environment, you should poke around Slashdot's servers and see if you are surprised (now if only mod_perl was finished we could move more of our servers over to using the new release).

The HTTP Server Project is now recommending this release for use on production websites. 2.0.35 is now considered their best release and should be used in preference to all older versions (including the 1.3 series). A few of the new features are:

  • higher performance over 1.3
  • multiple operational models: threaded, hybrid multi-processes and multi-threaded
  • specific request processing for Windows, Netware, BeOS, and OS/2
  • integrated SSL and WebDAV support
  • improved HTTP proxy support
  • I/O layering and filtering

40 of 325 comments (clear)

  1. Good news! by quantaman · · Score: 4, Funny

    Now www.wehavethewayout.com can upgrade back to a real server now!

    --
    I stole this Sig
  2. The Pipe of Death by James_G · · Score: 5, Funny
    *) Remove all signals from the worker MPM's child process. Instead, the parent uses the Pipe of Death for all communication with the child processes. [Ryan Bloom]

    The Pipe of Death? Does this conjur up images of developers sitting around a room saying things like.. "Man.. pass the pipe of death.. I need a hit", followed by lots of giggling and an unbelievable craving for chocolate and/or chinese food?

    No? Um, ok.. must be just me then..

    1. Re:The Pipe of Death by Jucius+Maximus · · Score: 5, Funny
      "The Pipe of Death? Does this conjur up images of developers sitting around a room saying things like.. "Man.. pass the pipe of death.. I need a hit", followed by lots of giggling and an unbelievable craving for chocolate and/or chinese food?"

      I was thinking more along the lines of 'I will club you over the skull with the pipe of Death. It has +7 attack versus Trolls and +6 defence against Moderators.'

  3. Playing it safe by Torinaga-Sama · · Score: 4, Funny

    Or maybe playing it lazy, I will wait a little while longer to upgrade. When I was younger I like being the first kid on my block to get the new toy. Now I am older and I don't even like going outside...

    --
    (/local/home/curiosity)-#who -u|grep thecat|cut -c 44-49|xargs kill -9
  4. Better performance? by Cutriss · · Score: 3, Funny

    higher performance over 1.3

    Really? I guess we'll find out in just a few minutes exactly *how* much more performance 2.0 has over 1.3... :)

    --
    "Mod, mod, mod...and another troll bites the dust."
    1. Re:Better performance? by jellomizer · · Score: 4, Interesting

      Well I decided to give a quick speed test. This is not scienctific Data I bet there are flaws in my testing and it is NOT REAL WORLD APPS. But my Test gave the results that Apache 2 is about 13% faster then 1.3.

      This is what I did. On a Sun Ultra 10 I installed Apache 1.3 and 2.0 (Latest of both and compiled them using the same compilers)
      port 80 was Apache 2.0
      port 8080 was Apache 1.3

      Then I used Lynx -dump http://localhost:0080 > /dev/null

      and recorded the time it would take to do 3000 connections

      then I did the same but on port 8080

      and recorded the time

      it took 2.28 for apache 2
      2.63 for apache 1.3

      so 2.0 is roughly 13% faster.

      This was testing 1 connection at a time not multable connections.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    2. Re:Better performance? by Doomdark · · Score: 3, Informative
      But, of course, Apache's is inherently limited to the number of connections it can handle, due to using a separate thread/process for each connection

      Hmmh. I may be wrong but:

      A few of the new features are: ... * multiple operational models: threaded, hybrid multi-processes and multi-threaded

      Does this not indicate that this is not necessarily true any more? Plus, on some platforms limitation is pretty high, esp. for threads ('full' processes usually have lower limits).

      --
      I like paying taxes. With them I buy civilization -- Oliver Wendell Holmes
  5. Re:Work with OSX? by doooras · · Score: 3, Funny

    Just use VirtualPC with a Linux OS Pack.

    unless, of course, you want it to run at a usable speed...

  6. PHP not there yet by augustz · · Score: 5, Informative

    Upgrades are a little early unless PHP starts compiling in, especially statically. (A la mod_php without DSO). They're getting close, php 4.2.0 should work I suspect, whenever it or any other previewish release comes out.

    Also, be nice to get some good benchmark numbers. Speed / SSL / Dynamic Content seem to be things just about everyone relies on, and it'd be great to have a nice case to move from 1.3. I know the Apache team has made a lot of progress on this, be great to see it validated.

    Bravo all around of course.

    - August

    1. Re:PHP not there yet by Kwikymart · · Score: 3, Insightful

      Yes, but there are some of us that like to use STABLE code. It's not really php's fault though. *sigh* this is probably a useless argument, however, because of the fact that this is fundamentally a x.0.0 release (even though its really 2.0.35). I am not going to run it till it has spent some time in the field (or I may set it up on an extra non-production machine). Damn, php rules for small applications.

      --

      Buying a Dell computer is equivalent to dropping the soap in a prison shower.
    2. Re:PHP not there yet by cliffwoolley · · Score: 3, Informative

      This should be fixed in HEAD for PHP already as I understand it. These compile errors are a result of the bucket brigades freelist API changes that went in to 2.0.34. I've heard there are some residual problems with PHP HEAD, but those are being debugged as we speak.

  7. Changelog by cscx · · Score: 5, Funny

    Example of open source at its best:

    Changes since 2.0.32-beta:

    *) connection.c: changed ++j to j++ in an attempt to fix a bug in mod_rewrite [Brian Pane]

    *) connection.c: changed ++i to ++j in honor of myself [Joe Orton]

    *) connection.c: fuck you guys, ++i is better [Justin Erenkrantz]

    *) connection.c: changed i += 1 to i++ for better performance [Graham Leggett]

    *) connection.c: changed i = i + 1 to i += 1 [Ian Holsman]

    [...]

    1. Re:Changelog by cpeterso · · Score: 3, Funny


      this explains it. No wonder Apache was stuck on version 1 for so long!! ;)

    2. Re:Changelog by Lictor · · Score: 3, Informative

      Not to spoil it for you or anything, but you really should have at least a *marginal* understanding of optimizing compilers before you go pretending to be an expert.

      I don't mean to be nasty here, but NOTHING offends me more than an arrogant ignorant person. We all make mistakes, and thats cool, but when you jump down someone elses back with condescending remarks you better be sure that you know what you're talking about.

      Without further ado, here are two C programs:

      add.c:
      main(){ int i; i = 0;i++;}

      add2.c:
      main(){int i;i = 0;i+=1;}

      Now, we compile them using the -S option on gcc (in my case on a SPARC running Solaris, but I'd wager you'd get similar results on just about any supported architecture). So again, we do a:

      % gcc -S add.c
      % gcc -S add2.c

      (I tried to post the .s files here, but our old friend the lameness filter clobbered them)

      Now, do a 'diff' on 'em. Draw your own conclusions.

  8. Re:I'll poke... by Raetsel · · Score: 5, Interesting

    Poke some more, you quit too soon.
    • GET /article.pl?sid=02/04/06/0216250 HTTP/1.1
    • HTTP/1.1 200 OK
      Server: Apache/1.3.20 (Unix) mod_perl/1.25 mod_gzip/1.3.19.1a
      X-Powered-By: Slash 2.003000
      X-Fry: Where's Captain Bender? Off catastrophizing some other planet?

    • GET /Slashdot/pc.gif?article,1018062768900 HTTP/1.1
    • HTTP/1.1 200 OK
      Server: Apache/1.3.17 (Unix)

    • GET /banner/cdig0001en.gif?1018062768915 HTTP/1.1
    • HTTP/1.1 200 OK
      Server: Apache/2.0.35 (Unix)
    Well, there's the first one at least. Looks like their banner ad server's on 2.0+. I don't feel like formatting the rest of the logfile, but there are a couple more in there.

    --

    "...America's great minds of today, teaching America's great minds of tomorrow. Poor bastards." -- A Beautiful Min
  9. Re:Apache Goes Gold by doooras · · Score: 4, Informative

    a while ago.

  10. Configuration, setup? by Phroggy · · Score: 3, Insightful

    What do I need to know about upgrading from 1.3 to 2.0? What's different in the configuration? Any changes in the way the files are laid out by default? Will my existing httpd.conf work without modification? Would that be a stupid thing to try?

    I thought I heard somewhere that 2.0 might make it possible to have PHP scripts with per-user permissions, like you can get CGI scripts to do if you use suEXEC to setuid to the appropriate user before executing. This is important for servers with multiple users running their own web sites; even if all your users are trusted not to mess with each other's stuff you can run into icky situations where a PHP script writes to a file that the user then doesn't have FTP access to (so they have to write another PHP script to access it). Did I hear correctly? If so, what's involved in configuring it? If not, does anyone have any workarounds?

    --
    $x='S24;r)>63/* h@<5+oZ)32"5cz';$me='phroggy'x$];
    $x=~y+ -xz+\0-Tx+;print$_^chop$me for split'',$x;
    1. Re:Configuration, setup? by cliffwoolley · · Score: 5, Informative
      Check out my Linux Magazine article from January, which was just posted online recently.</shameless plug>

      The short answer to your question: while yes, you can probably get your 1.3 config to work without *too* many changes, you should spend a bit more time exploring Apache 2.0, or you'll miss out on a lot of the benefits.

      The configuration is totally different; it uses GNU autoconf now instead of the home-grown APACI system. The two have many similarities, but you should peruse all of the

      ./configure --help
      options carefully.

      The perchild MPM (which provides the configurable userid per Apache child process that you mention) is possibly not yet working; it's still classified as experimental. But we'll probably be getting that cleaned up within another release or two.

  11. I'll run Apache 2.0 by Saint+Aardvark · · Score: 5, Funny

    when its version number is the same as my Linux 7.2.

    1. Re:I'll run Apache 2.0 by Anonymous Coward · · Score: 5, Funny

      You're still using Linux 7.2? You should switch to the new AOL 8.0, it's better.

  12. Journalistic ethics in action... ;-) by stienman · · Score: 5, Funny

    Of course, when it's something Slashdot depends on, they not only wait for the official announcement, they wait until they've downloaded it before printing it!

    :-D

    -Adam

  13. too much spare time methinks by rtscts · · Score: 5, Funny

    If only the Linux kernel changelog was so detailed (it'd be bigger than the kernel itself)

    Apache: *) connection.c: changed ++i to ++j in honor of myself [Joe Orton]

    LinuxKernel: VM tweaks [read: ripped the arse out of the kernel and replaced it with someone else's]

  14. recent benchmarks? by green+pizza · · Score: 3, Interesting

    I'm curious as to how Apache 2.0 stacks up against Apache 1.3, as well as recent versions of iPlanet and Zeus. A quick web and usenet search via google found gobs of benchmark results, none of which were newer than about 8 months. Anyone have some links to modern bechmark results... or a pointer to a "good" opensource httpd benchmark tool (or anything other than SPECweb99)?

    1. Re:recent benchmarks? by green+pizza · · Score: 3, Funny

      Performance isn't an issue unless you're still running it on a 486. ;-)

      Sun SPARCstation 20, more than enough power... but hey, I'll take any extra performance I can get! :-D

    2. Re:recent benchmarks? by cliffwoolley · · Score: 3, Informative

      Apache will never run as fast as iPlanet or Zeus because it is more sophisticated. It's definitely better than Apache 1.3 as of late, though. Look through the archives for dev@httpd.apache.org and search for a message from Brian Pane a week or two ago when we were putting the finishing touches on the bucket brigades API work... he posted some performance comparisons there.

      As for iPlanet and Zeus ... maybe in Apache 2.1 or 3.0 or whenever we get the async I/O MPM that we've been talking about, then we'll come closer. But still, you just have to expect that it's a tradeoff: do you want ultra-fast performance on a fairly simple web server, or do you want really good performance on highly customizable web server?

  15. the image servers run on this by JDizzy · · Score: 4, Informative

    I can remember krow (aka Brian Aker) tell me in IRC about how he setup apache2 to just server images. Like the most simple thing you can do. It requires no special threading, or proces modes, just http1.1. At most, they can do geographic ad targeting with revers DNS lookups tied to the image servers. Blah... still not that special, but at least they can say they run apache2. I have also read where he claims apache2 is't ready for prime time. This is very telling, not because he is senior Slashdot developer, but more because he is known best for his apache 1.3 modules, such as mod_mp3, or mod_layout.

    --
    It isn't a lie if you belive it.
  16. CowboyNeal by vlad_petric · · Score: 3, Funny


    It should be: "on CowboyNeal, which I rooted"

    Got root?
    The Raven.

    --

    The Raven

  17. Re:Watch Software Update by cpeterso · · Score: 4, Insightful


    I seriously doubt Apple would "slipstream" Apache 2.0 onto users' computers via Software Update. Apache 2.0 breaks backwards compatibility on many Apache modules and who know what else. Since Apache 2.0 is largely untested by the public, I bet Apple will wait for a few more updates and then include it later in Mac OS X 10.2.

  18. Re:Windows XP by cliffwoolley · · Score: 3, Interesting

    I'm pretty sure the answer is still "yes." Though I believe there's a hotfix from MS available for XP that fixes the problem. Have a look at this page, which explains the issue: http://www.apache.org/dist/httpd/binaries/win32/#x pbug and points you at the corresponding MSKB article.

  19. Semi-stable working PHP by SiMac450 · · Score: 5, Informative
    Well, neither 4.1.2 or 4.2.0RC2 worked for me with Apache 2.0. However, I have a simple solution. I just stole the CVS copy of the apache2filter (well, actually only the .h, .c, and .m4 files) and put it with 4.1.2 and it works perfectly. See it in action at http://simonster.com/. If you're too lazy to do this procedure yourself, I have a source archive at http://simonster.com/php-4.1.2.tar.gz

    For installation, I found that the easiest thing to do is to add

    AddOutputFilter PHP .php
    AddInputFilter PHP .php

    Somewhere in the document and, for indexes,

    AddType text/html .php

    before the DirectoryIndex (which must be modified to add index.php). The CVS version works also, but I had problems with some scripts under it. Hope this helps. SiMac450

  20. Re: Ad servers by Raetsel · · Score: 3, Interesting

    ABORT, ABORT!!!

    Whoa there, cowboy. Slow down a bit.

    "These slimeballs" don't even come into play here. Slashdot is hosting its' own ads (in this case), so your spleen-venting is rather unfair. Half of what you're demanding they do, they already do! (And if they're willing to accept credit cards directly, or let me mail them a check, I'll subscribe -- I won't deal with PayPal. There is that point.)

    Now, back on target... The addresses I posted were all requests from the slashdot.org domain. The log was from my proxy -- which drops all communication with Doubleclick.

    It's easy to check, just make the request to images.slashdot.org -- it's the California Digital ad about their acquisition of VA Linux's servers "...blue lights and all." The interesting thing is that you can see the load balancing in action. I received responses from "Apache/1.3.12" and "Apache/2.0.35" (same content, different server!) -- keep hitting 'reload', you'll see it.

    Final note... I switched off my denial function and took a look at Doubleclick -- both their .com domain and clients that serve from their .net ad servers. Yes the 'Great Satan' is joined at the hip with Lucifer himself (at least from what I'm told here). They're running Internet Information Server, both v4 and v5.

    --

    "...America's great minds of today, teaching America's great minds of tomorrow. Poor bastards." -- A Beautiful Min
  21. Where do they recommend to use 2.0 over 1.3.24? by pwagland · · Score: 3, Interesting
    httpd.apache.org has this to say: (my emphasis)
    Apache 1.3.24 is the best version of Apache currently available; everyone running 1.2.X servers or earlier are strongly urged to upgrade to 1.3, as there will not be any further 1.2.X releases. At present, the Win32 port of Apache is not as stable as the UNIX version.
    and also
    Apache 2.0 offers numerous enhancements, improvements and performance boosts over the 1.3 codebase
    But nowhere do they actually say that 2.0.35 is their best release. At least not yet, maybe they will change their website in the future....
  22. Kiwi filesystem? by KjetilK · · Score: 4, Interesting

    integrated SSL and WebDAV support

    WebDAV seems great when you try to work with larger groups. While I do OK with FTP and similar stuff, I think it would be a nice feature to be able to mount a remote WebDAV directory, and it seems like this is available in the form of Kiwi Filesystem

    Does anybody have any experience with this software? Has it been included in any distros?

    --
    Employee of Inrupt, Project Release Manager and Community Manager for Solid
    1. Re:Kiwi filesystem? by crisco · · Score: 4, Informative
      I've used the WebDAV module with Apache on both Windows and Linux systems to offer things like a quick and dirty remote file share, a private Yahoo briefcase-ish service and as another poster describes, uploading websites. WebDAV is not only cross platform, a client comes with IE 4 and later. As a part of MS 'integration', the WebDAV servers appear as a 'Web Folder' or a 'Network Place' inside Windows Explorer. This allows you to set something up and provide simple instructions for those that glaze over when you start talking about protocols or installing new software. Of course, Microsoft doens't quite implement things perfectly so I've had some bizarre issues with Windows98 refusing to connect to a server but for the most part it works very well.

      I haven't used the Kiwi File System though.

      --

      Bleh!

  23. Oh joy. by EvlPenguin · · Score: 3, Informative

    Great. And unless you need to run something on the scale of slashdot (in terms of cgi dirty work/complexity) I would much rather run thttpd. It's faster and smaller, with much less overhead and much (much) more secure. I've never needed all the bells and whistles of apache, and I doubt 80% of the people who use apache do.

    --

    --
    #nohup cat /dev/dsp > /dev/hda & killall -9 getty
  24. When Slashdot runs it? by plaa · · Score: 4, Funny

    Isn't Slashdot already running it? I guess it still has a few bugs in it though...

    When mod_perl runs 857 / 649%
    When it becomes 2.1 1008 / 763%
    Brian B spins it urban style 390 / 295%
    Slashdot runs it 708 / 536%
    Already running it, thank you 455 / 344%
    On CowboyNeals box, which I've r00t3d 2594 / 1965%

    132 total votes.

    --

    I doubt, therefore I may be.
  25. Error when building on Solaris 8 by Isaac-Lew · · Score: 3, Interesting
    Ok, apparently I'm having a problem building apache on Solaris 8:

    In file included from /home/isaac/httpd-2.0.35/srclib/apr/atomic/so laris_sparc/apr_atomic_sparc.s:63: /usr/include/sy s/asm_linkage.h:104: `#' operator should be followed by a macro argument name

    (Repeats for several different lines)

    /home/isaac/httpd-2.0.35/srclib/apr/atomic/solari s_sparc/apr_atomic_sparc.s:113: unterminated character constant

    Looks like possibly a broken include file on Solaris, any ideas?

  26. Re:runs great on FreeBSD! by cliffwoolley · · Score: 3, Informative
    Two things:

    the prefork MPM is the default on Unix in general. We talked about switching the worker MPM (the hybrid threads/processes one) to be the default, but didn't do it for some reason or another. That's not to say that you shouldn't use the worker MPM... if your platform has good threading support, then by all means, worker is the way to go. It scales far, far better than prefork. However, it's true that you can't run a threaded Apache (and therefore the worker MPM) on FreeBSD right now. We're working on that, but it's still unclear exactly where the problem is.

    the prefork MPM is not listed as experimental. If it is, it's a mistake (tell me where it says that and I'll change it!). The only one that's listed as experimental is perchild, which is the one that lets you configure the server to run certain virtual hosts under certain child processes and to assign different uid's to each child process.

  27. thttpd is good for static content, but.. by Fweeky · · Score: 3, Informative

    Plenty of people want dynamically driven sites; something httpd isn't aimed for.

    Personally I use quite a few of the features of Apache; mod_php (thttpd has this, but each script blocks the server, Not Good[tm] unless your scripts are trivial), mod_proxy (Outside world -> FreeBSD/Apache -> WinXP/Apache, appears as part of my web tree, nice and clean), mod_rewrite (how anyone can put up with the crappy URL's dynamic sites like I don't know, a 1:1 mapping of URL's to the filesystem is bad enough) and mod_gzip (does thttpd support any content negotiation?) to name the main ones, and this is just a miniscule personal server :)

  28. Re:Playing it smart - pgsql bug by thing12 · · Score: 3, Informative

    You only got burned by the bug if you actually saw the problem - like say me. I'm actually the one who reported the reproducable test case for this bug. The bug has been in the system since the introduced WAL in 7.1. And how did I find it? Pg crashed in our production environment and we got duplicate inserts primary keys after it started up again. At least it's fixed now - and going from 7.2.0 to 7.2.1 is _not_ a hard thing: compile, install, stop/start. Couple seconds of downtime?