A Viable IIS Alternative? Apache 2.0 on Windows 2000
by Dan DiNicolo
It's not too often that I get excited about new software releases. To be honest, they usually only mean one thing to me - more testing, more details, and more work. However, this particular release is a big deal. Like most users, I've pretty much had it with the constant patching and research involved with maintaining Internet Information Server. From Nimda through to the most recent 10-fix cumulative patch, I'm pretty much IIS'ed out, and I'm sure many of you are too. The good news is that there is finally a strong alternative as far as a Web server that runs on Windows 2000. Say hello to Apache Server 2.0.
While previous versions of Apache were a great solution in environments running Unix or Linux, the Windows version always lagged behind in terms of performance. The fact that Apache holds over 50 percent of the Web server market is testament to its performance and reliability. However, up until now, that was pretty much limited to the *nix world. Yes, a Win32 version has been available for a long time. However, the new version really takes Apache to a level where you should give it serious consideration on your Windows 2000 servers.
I'll start off with the downside. The Windows version of Apache 2.0 still doesn't have a fancy GUI to use for configuration. Like all other versions, it still needs to be configured using the trusty httpd.conf file, as shown below. The file itself provides very detailed instructions as far as configuration goes, but any text file is usually enough to keep an inexperienced administrator away.
On the plus side, the new version is production-environment ready and has tested at speeds at least equal to IIS (click here for the eWeek test article). That was always the knock on earlier Windows versions of Apache. While it was stable, it still couldn't meet the performance of IIS on the Windows platform. With that out of the way, Apache 2.0 is worth taking a look at.
Another plus is how easy Apache is to install. I downloaded it immediately and went straight to installing it. I wanted to see how quick I could get the server up and running, and what this version was all about. You can still install the source files and get ready for reading. I choose to download the pre-package MSI file instead. Altogether, the download (without the complete source files) is about 3 MB. I've provided a link to the MSI file at the end of the article.
Just like any other Windows application, a wizard walks you through the installation process.
During the installation process, you have the option of installing Apache as a service for all users, or only for yourself (for testing purposes) which requires it to be started manually.
The entire installation process takes less than five minutes to complete. Once the installation was complete, I immediately jumped to the administrative tools. Needless to say, they're a little sparse. While you have quick access to the httpd.conf file, the remaining tools are pretty limited. Essentially they give you the ability to quick start, restart, or stop the service, while also providing direct links to various Apache help files and logs, as shown below.
One simple but useful utility provided is the Apache Service Monitor, which sits in your system tray and provides continual status information on your server(s).
The next step is obviously the key - opening up your Web browser, pointing it to the loopback address, and seeing whether the Web server actually works. I can't say that I was surprised, but I admit to grinning when I saw the Apache logo pop up.
I'm not saying that you should rip each and every IIS server out of your environment. However, you should always be on the lookout for alternatives, especially given the pain and suffering that many of us have faced at the hands of IIS over the years. Since the performance gap between IIS and Apache has pretty much closed on the Windows platform, it may be time to finally give it a good look. Sure, it will mean learning a little about Apache's setup and configuration, but learning never killed anyone.
To be honest, Apache really isn't all that difficult to configure if your site is fairly simple. If you've relied on some of the more advanced features of IIS, you're in for a little (or a lot) more work. At the end of the day, however, what you're getting is a Web server platform that has proven its stability time and time again. If nothing else, setting it up for testing purposes will give you a better idea of what's possible. Maybe you'll even save yourself some patch-time once all is said and done.
Here's a link to the download for Apache 2.0: http://www.apache.org/dist/httpd/