Apache under Windows Page 8
An NT service, as the name suggests, runs on NT. Win95 and Win98 don't have this sort of thing. Thus, Apache has to run as a console application on Win9x. That means that you open a DOS window and invoke the Apache executable from the command line, and it runs in that console window, which must be left open for the duration of the Apache process. This also means that you must be logged onto the machine in order for Apache to be running -- it does not start automatically on a reboot, even if you have it in your ''Startup'' folder, unless you first log on.
To stop or restart the Apache process, you need to open up another DOS window, and type
apache -k shutdown
apache -k restart
Simply closing the window in which Apache is running will cause Apache to exit immediately, without cleaning up after itself. If you do that, the next time you start Apache, it will complain about the pid file not being cleaned up:
[Tue Jan 04 21:15:32 2000] [warn] pid file c:/httpd/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
This is probably not a big deal, since you're unlikely to be running production services on a Win9x machine anyway.
One of the common complaints about Apache, and about Unix in general, is that the configuration is just too darned difficult. What this usually means is one of two things. Either it is referring to the fact that every stinkin' application has a different configuration file format, or the fact that most of them don't have a nice GUI for configuration. Or both.
Now, while many of us are die-hard Unix bigots, and are quite content with the notion that if software was hard to write, it should be hard to use, these are no longer acceptable notions, particularly in the NT world, where people are quite content to use an inferior product, if it is easier to use. One does not have to look any farther than NT itself for evidence of this.
Fortunately, there is Comanche. Comanche is a GUI for configuring Apache. But not only Apache -- any application that has a text configuration file. There are currently Comanche plug-ins that let you configure Comanche and Samba, and it is fairly simple to write extensions for it to configure anything else.
You can get Comanche at http://comanche.com.dtu.dk/
Apache modules on NT are implemented as DLL files, so you can just load the ones that you want, and leave out the ones that you don't, and you don't have to recompile Apache to do this. That's nice. You can load a module with the LoadModule directive.LoadModule speling_module modules/ApacheModuleSpeling.dll
The difficulty with modules on Windows is that Windows systems, as a rule, don't come equipped with a compiler. So adding non-standard modules is rather more difficult on Windows systems. For most users, the modules that come with the product are the ones that you're stuck with.
mod_perl, in case you're not familiar with it, is a module that loads the Perl interpreter into memory at server startup, so that Perl CGI programs don't have to pay that startup cost every time they are run. Additionally, mod_perl lets you write Apache modules in Perl.
For more information on mod_perl, see http://perl.apache.org/