The Apache Software Foundation and the Apache HTTP Server Project have deemed version 2.2.0 of the Apache HTTP Server production ready, describing it as, "the best version of Apache available," and they "encourage users of all prior versions to upgrade."
This is the first major release of the popular Web server since 2.0 went gold in April 2002. According to Netcraft, whose Web server penetration statistics are most frequently cited, Apache powered more than 52 million, or 70.51 percent, of Web sites as of December 1, 2005.
The two older forks, 2.0 and 1.3, will continue to be updated and patched, as needed.
The new version contains a hosts of enhancements, improvements, and performance boosts over the 2.0 codebase. Change details can be found in the release notes, which are in the CHANGES_2.2 file.
Key to the release is the Apache Portable Runtime (APR) module v1.2.2, which is bundled with the .tar and .zip distributions. The APR libraries libapr, libaprutil, and (on Win32) libapriconv must be updated to ensure binary compatibility and address many known platform bugs.
Modules and applications developed for Apache 2.2.0 have been developed to be both source- and binary-compatible with future 2.2.x releases. This release builds on and extends the Apache 2.0 API; however, modules written for Apache 2.0 must be recompiled to run with Apache 2.2, but no substantial reworking should be necessary, according to a statement issued by the Apache Software Foundation.
The release is not without hiccups, however. Two issues found during the 2.2.0 release and testing cycle are:
- mod_dbd and mod_authn_dbd are absent from the Windows build environment. A patch to correct this is available.
- When installing on a system with apr/apr-util 1.0 or 1.1 installed, apr/apr-util 1.2 must be built manually.
The Apache Software Foundation warned that when upgrading or installing the new version, users should bear in mind that if the Web server is to be used with one of the threaded MPMs, any modules to be used with it (and the libraries they depend on) must be thread-safe.