This document describes some of the major changes between the 2.0 and 2.2 versions of the Apache HTTP Server. For new features since version 1.3, see the 2.0 new features document.
graceful-stop
signal. The Apache JServ Protocol version 1.3
used by
Apache Tomcat.--with-pcre
flag to configure.apr_dbd
framework, brings direct SQL support to modules that need it.
Supports connection pooling in threaded MPMs.mod_auth
is now split into
mod_auth_dbm
is now
called mod_access
has
been renamed mod_auth_ldap
module to the 2.2 Authn/Authz
framework. New features include using LDAP attribute values and
complicated search filters in the
?config
argument which will show
the configuration directives as parsed by Apache, including
their file name and line number. The module also
shows the order of all request hooks and additional
build information, similar to httpd -V
.mod_imap
has been renamed to
-M
has been added that
lists all modules that are loaded based on the current
configuration. Unlike the -l
option, this list
includes DSOs loaded via dbm
map type.APR
and
APR-Util
. For details, see the
APR Website.mod_auth_*
-> Modules that implement an HTTP
authentication mechanismmod_authn_*
-> Modules that provide a backend
authentication providermod_authz_*
-> Modules that implement
authorization (or access)mod_authnz_*
-> Module that implements both
authentication & authorizationap_log_cerror
has been added to log
errors that occur with the client's connection. When logged,
the message includes the client IP address.test_config
has been added to aid
modules that want to execute special code only when the user passes
-t
to ap_register_output_filter_protocol
or
ap_filter_protocol
calls.pcreposix.h
header is no longer available;
it is replaced by the new ap_regex.h
header. The
POSIX.2 regex.h
implementation exposed by the old
header is now available under the ap_
namespace
from ap_regex.h
. Calls to regcomp
,
regexec
and so on can be replaced by calls to
ap_regcomp
, ap_regexec
.With Apache 1.x and 2.0, modules requiring an SQL backend had to take responsibility for managing it themselves. Apart from reinventing the wheel, this can be very inefficient, for example when several modules each maintain their own connections.
Apache 2.1 and later provides the ap_dbd
API for
managing database connections (including optimised strategies
for threaded and unthreaded MPMs), while APR 1.2 and later provides
the apr_dbd
API for interacting with the database.
New modules SHOULD now use these APIs for all SQL database operations. Existing applications SHOULD be upgraded to use it where feasible, either transparently or as a recommended option to their users.