Overview of New Features in Apache 2.0

Enhancements: Core | Module


Core Enhancements:

Unix Threading
On Unix systems with POSIX threads support, Apache can now run in a hybrid multiprocess, multithreaded mode. This should improve scalability.
New Build System
The build system has been rewritten from scratch to be based on autoconf and libtool. This makes Apache's configuration system more similar to that of other packages.
Multiprotocol Support
Apache now has some of the infrastructure in place to support serving multiple protocols. mod_echo has been written as an example.
Better support for non-Unix platforms
Apache 2.0 is faster and more stable on non-Unix platforms such as BeOS, OS/2, and Windows. With the introduction of platform-specific multi-processing modules (MPMs) and the Apache Portable Runtime (APR), these platforms are now implemented in their native API, avoiding the often buggy and poorly performing POSIX-emulation layers.
New Apache API
The API for modules has changed significantly for 2.0. Many of the module-ordering problems from 1.3 should be gone. 2.0 does much of this automatically, and module ordering is now done per-hook to allow more flexibility. Also, new calls have been added that provide additional module capabilities without patching the core Apache server.
IPv6 Support
On systems where IPv6 is supported by the underlying Apache Portable Runtime library, Apache gets IPv6 listening sockets by default. Additionally, the Listen, NameVirtualHost, and <VirtualHost> directives support IPv6 numeric address strings (e.g., "Listen [fe80::1]:8080").
Filtering
Apache modules may now be written as filters which act on the stream of content as it is delivered to or from the server. This allows, for example, the output of CGI scripts to be parsed for Server Side Include directive by mod_include.

Module Enhancements:

mod_ssl
New module in Apache 2.0. This module is an interface to the SSL/TLS strong encryption protocols provided by OpenSSL.
mod_dav
New module in Apache 2.0. This module implements the HTTP Distributed Authoring and Versioning (DAV) specification for posting and maintaining web content.
mod_auth_db
Now supports Berkeley DB 3.0
mod_auth_digest
Includes additional support for session caching across processes using shared memory.
mod_charset_lite
New module in Apache 2.0. This experimental module allows for character set translation or recoding.
mod_file_cache
New module in Apache 2.0. This module includes the functionality of mod_mmap_static in Apache 1.3, plus adds further caching abilities.
mod_headers
This module is much more flexible in Apache 2.0. It can now modify request headers used by mod_proxy, and it can conditionally set response headers.