1 <?xml version='1.0' encoding='UTF-8' ?>
2 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="./style/manual.en.xsl"?>
4 <!-- $LastChangedRevision$ -->
7 Copyright 2002-2004 The Apache Software Foundation
9 Licensed under the Apache License, Version 2.0 (the "License");
10 you may not use this file except in compliance with the License.
11 You may obtain a copy of the License at
13 http://www.apache.org/licenses/LICENSE-2.0
15 Unless required by applicable law or agreed to in writing, software
16 distributed under the License is distributed on an "AS IS" BASIS,
17 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 See the License for the specific language governing permissions and
19 limitations under the License.
22 <manualpage metafile="new_features_2_2.xml.meta">
24 <title>Overview of new features in Apache 2.2</title>
27 <p>This document describes some of the major changes between the
28 2.0 and 2.2 versions of the Apache HTTP Server. For new features since
29 version 1.3, see the <a href="new_features_2_0.html">2.0 new features</a>
34 <title>Core Enhancements</title>
38 <dd>The bundled authentication and authorization modules have
39 been refactored. There is a new authentication backend provider
40 scheme which greatly eases the construction of new authentication
44 <dd><module>mod_cache</module>, <module>mod_disk_cache</module>, and
45 <module>mod_mem_cache</module> have undergone a lot of changes
46 are now considered production-quality. <a
47 href="programs/htcacheclean.html">htcacheclean</a> has been
48 introduced to cleanup <module>mod_disk_cache</module> setups.</dd>
51 <dd>The new <module>mod_proxy_balancer</module> module provides
52 load balancing services for <module>mod_proxy</module>.
53 The new <module>mod_proxy_ajp</module> module adds support for the
54 <code>Apache JServ Protocol version 1.3</code> used by
55 <a href="http://jakarta.apache.org/tomcat/">Apache Tomcat</a>.</dd>
57 <dt>Smart Filtering</dt>
58 <dd><module>mod_filter</module> introduces dynamic configuration
59 to the output filter chain. It enables filters to be conditionally
60 inserted, based on any Request or Response header or environment
61 variable, and dispenses with the more problematic dependencies and
62 ordering problems in the 2.0 architecture.</dd>
68 <title>Module Enhancements</title>
70 <dt><module>mod_authnz_ldap</module></dt>
71 <dd>This module is a port of the 2.0
72 <code>mod_auth_ldap</code> module to the 2.2 <code>Authn/Authz</code>
73 framework. New features include using LDAP attribute values and
74 complicated search filters in the
75 <directive module="core">Require</directive> directive.</dd>
77 <dt><module>mod_info</module></dt>
78 <dd>Added a new <code>?config</code> argument which will show
79 the configuration directives as parsed by Apache, including
80 their file name and line number. The module also
81 shows the order of all request hooks and additional
82 build information, similar to <code>httpd -V</code>.</dd>
86 <section id="developer">
87 <title>Module Developer Changes</title>
91 <dd>Apache 2.2 uses the APR 1.0 API. All depreciated functions and
92 symbols have been removed from <code>APR</code> and
93 <code>APR-Util</code>. For details, see the
94 <a href="http://apr.apache.org/">APR Website</a>.</dd>
96 <dt>Connection Error Logging</dt>
98 <dd>A new function, <code>ap_log_cerror</code> has been added to log
99 errors that occure with the client's connection. When logged,
100 the message includes the client IP address.</dd>
102 <dt>Test Configuration Hook Added</dt>
104 <dd>A new hook, <code>test_config</code> has been added to aid
105 modules that want to execute special code only when the user passes
106 <code>-t</code> to httpd.</dd>
108 <dt>Set Threaded MPM's Stacksize</dt>
110 <dd>A new directive, <code>ThreadStackSize</code> has been added to
111 set the stack size on all threaded MPMs. This is required
112 for some third-party modules on platforms with small default
113 thread stack size.</dd>
115 <dt>Protocol handling for output filters</dt>
117 <dd>In the past, every filter has been responsible for ensuring
118 that it generates the correct response headers where it affects
119 them. Filters can now delegate common protocol management to
120 <module>mod_filter</module>, using the
121 <code>ap_register_output_filter_protocol</code> or
122 <code>ap_filter_protocol</code> calls.</dd>