[APACHE DOCUMENTATION]

Apache HTTP Server Version 1.3

Overview of New Features in Apache 1.3

New features with this release, as extensions of the Apache functionality. Because the core code has changed so significantly, there are certain liberties that earlier versions of Apache (and the NCSA daemon) took that recent Apache versions are pickier about - please check the compatibility notes if you have any problems.

If you're upgrading from Apache 1.2, you may wish to read the upgrade notes.

Enhancements: Core | Performance | Configuration | Modules | API | Misc


Core Enhancements:

Dynamic Shared Object (DSO) support
Apache modules may now be loaded at runtime; this means that modules can be loaded into the server process space only when necessary, thus overall memory usage by Apache will be significantly reduced. DSO currently is supported on FreeBSD, OpenBSD, NetBSD, Linux, Solaris, SunOS, OSF1, IRIX, HP/UX, UnixWare, AIX, ReliantUnix and generic SVR4 platforms.
Support for Windows NT/95
Apache now experimentally supports the Windows NT and Windows 95 operating systems.
Re-organized Sources
The source files for Apache have been re-organized. The main difference for Apache users is that the "Module" lines in Configuration have been replaced with "AddModule" with a slightly different syntax. For module authors there are some changes designed to make it easier for users to add their module.
Reliable Piped Logs
On almost all Unix architectures Apache now implements "reliable" piped logs in mod_log_config. Where reliable means that if the logging child dies for whatever reason, Apache will recover and respawn it without having to restart the entire server. Furthermore if the logging child becomes "stuck" and isn't reading its pipe frequently enough Apache will also restart it. This opens up more opportunities for log rotation, hit filtering, real-time splitting of multiple vhosts into separate logs, and asynchronous DNS resolving on the fly.


Performance Improvements

See the new performance documentation for more information.


Configuration Enhancements

Apache Autoconf-style Interface (APACI)
Until Apache 1.3 there was no real out-of-the-box batch-capable build and installation procedure for the complete Apache package. This is now provided by a top-level configure script and a corresponding top-level Makefile.tmpl file. The goal is to provide a GNU Autoconf-style frontend which is capable to both drive the old src/Configure stuff in batch and additionally installs the package with a GNU-conforming directory layout. Any options from the old configuration scheme are available plus a lot of new options for flexibly customizing Apache.
APache eXtenSion (APXS) support tool
Now that Apache provides full support for loading modules under runtime from dynamic shared object (DSO) files, a new support tool apxs was created which provides off-source building, installing and activating of those DSO-based modules. It completely hides the platform-dependent DSO-build commands from the user and provides an easy way to build modules outside the Apache source tree. To achieve this APACI installs the Apache C header files together with the apxs tool.
Default Apache directory path changed to /usr/local/apache/
The default directory for the apache ServerRoot changed from the NCSA-compatible /usr/local/etc/httpd/ to /usr/local/apache/. This change covers only the default setting (and the documentation); it is of course possible to override it using the -d ServerRoot and -f httpd.conf switches when starting apache.
Improved HTTP/1.1-style Virtual Hosts
The new NameVirtualHost directive is used to list IP address:port pairs on which HTTP/1.1-style virtual hosting occurs. This is vhosting based on the Host: header from the client. Previously this address was implicitly the same as the "main address" of the machine, and this caused no end of problems for users, and was not powerful enough. Please see the Apache Virtual Host documentation for further details on configuration.
Include directive
The Include directive includes other config files immediately at that point in parsing.
-S command line option for debugging vhost setup
If Apache is invoked with the -S command line option it will dump out information regarding how it parsed the VirtualHost sections. This is useful for folks trying to debug their virtual host configuration.


Module Enhancements

NEW - Spelling correction module