Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

perrin (4270)

  (email not shown publicly)

Perrin is a contributor to various Perl-related projects like mod_perl, Template Toolkit, and Class::DBI. He is a frequent speaker at OSCON, YAPC, and ApacheCon, and a contributor to several perl-related books.

Journal of perrin (4270)

Tuesday April 17, 2007
10:07 PM

Bruce Perens seems uninformed about Apache HTTPD

[ #33016 ]

There's an article here about Bruce Perens manipulating the headers on some Lighttpd servers to look like Apache for Netcraft stats purposes. At the end of this article, he says this:

"Apache is desirable if you want mod_perl, or mod_some-interpretive-language. That's an old-fashioned way of programming. Most newly-architected Web sites decouple the dispatcher running the interpretive language code from the Web server. These days, something like lighttpd works better for most sites. Open Source is about evolution."

This statement is confused on many levels. To begin with, I don't think many people choose Apache HTTPD because they want to run mod_perl, but that's subjective so I'll skip it.

Look at the part about separating the interpreter from the web server. This has been the recommended mod_perl configuration for busy sites for at least the past 10 years. The mod_perl docs have recommended running a light front-end server (Apache with mod_proxy, or Squid, or whatever) and using a mod_perl-enabled Apache as an "application server" behind the scenes. It's essentially identical to running FastCGI or the Java servlet daemons that came along later in terms of architecture.

And how about that evolution? Lighttpd quickly became popular with the Ruby crowd, but then some of them became annoyed with its FastCGI implementation. So what did they do? They wrote their own HTTPD that runs the Ruby code and used Lighttpd as a front-end, proxing the dynamic requests to it. Hmmm, where have I heard that before?

The larger point is that the Apache 2 HTTPD is a lot more than a web server. It's really a modular framework for writing networked servers. Everything, right down to the HTTP protocol, can be replaced with a module, and it can be done in multiple languages, including Perl.

Lighttpd might be the best server for Perens' application, and it's a high-quality open source application. I just wish he would get his facts straight about Apache and mod_perl.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • His reality distortion field includes a lot more than just that. He's in the world of loving new open source things instead of the more practical concerns of getting things done.
  • For instance - the spoofing is still spotted as lighthttpd, doesn't noticably affect the stats and could be contributing demonstating that their are two open source web servers dominating either end of the web server market. (i.e general and specialist, like Zeus, etc).

    @JAPH = qw(Hacker Perl Another Just);
    print reverse @JAPH;