summaryrefslogtreecommitdiffstats
path: root/docs/manual/new_features_2_0.html.en
blob: 8b9d028b1d9b4c9dd9f96f6743dedba97e9a5626 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>Overview of new features in Apache HTTP Server 2.0 - Apache HTTP Server Version 2.4</title>
<link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
<script src="./style/scripts/prettify.min.js" type="text/javascript">
</script>

<link href="./images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p>
<p class="apache">Apache HTTP Server Version 2.4</p>
<img alt="" src="./images/feather.png" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.4</a></div><div id="page-content"><div id="preamble"><h1>Overview of new features in Apache HTTP Server 2.0</h1>
<div class="toplang">
<p><span>Available Languages: </span><a href="./de/new_features_2_0.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
<a href="./en/new_features_2_0.html" title="English">&nbsp;en&nbsp;</a> |
<a href="./fr/new_features_2_0.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/new_features_2_0.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="./ko/new_features_2_0.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="./pt-br/new_features_2_0.html" hreflang="pt-br" rel="alternate" title="Português (Brasil)">&nbsp;pt-br&nbsp;</a> |
<a href="./tr/new_features_2_0.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div>

  <p>This document describes some of the major changes between the
     1.3 and 2.0 versions of the Apache HTTP Server.</p>
</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#core">Core Enhancements</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#module">Module Enhancements</a></li>
</ul><h3>See also</h3><ul class="seealso"><li><a href="upgrading.html">Upgrading to 2.0 from 1.3</a></li><li><a href="#comments_section">Comments</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="core" id="core">Core Enhancements</a></h2>
    

    <dl>
      <dt>Unix Threading</dt>

      <dd>On Unix systems with POSIX threads support, Apache httpd can
      now run in a hybrid multiprocess, multithreaded mode. This
      improves scalability for many, but not all configurations.</dd>

      <dt>New Build System</dt>

      <dd>The build system has been rewritten from scratch to be
      based on <code>autoconf</code> and <code>libtool</code>.
      This makes Apache httpd's configuration system more similar to
      that of other packages.</dd>

      <dt>Multiprotocol Support</dt>

      <dd>Apache HTTP Server now has some of the infrastructure in place to
      support serving multiple protocols. <code class="module"><a href="./mod/mod_echo.html">mod_echo</a></code> has
      been written as an example.</dd>

      <dt>Better support for non-Unix
      platforms</dt>

      <dd>Apache HTTP Server 2.0 is faster and more stable on non-Unix
      platforms such as BeOS, OS/2, and Windows. With the
      introduction of platform-specific <a href="mpm.html">multi-processing modules</a> (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.</dd>

      <dt>New Apache httpd API</dt>

      <dd>The API for modules has changed significantly for 2.0.
      Many of the module-ordering/-priority 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 HTTP Server.</dd>

      <dt>IPv6 Support</dt>

      <dd>On systems where IPv6 is supported by the underlying
      Apache Portable Runtime library, Apache httpd gets IPv6 listening
      sockets by default. Additionally, the <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>, <code class="directive"><a href="./mod/core.html#namevirtualhost">NameVirtualHost</a></code>, and <code class="directive"><a href="./mod/core.html#virtualhost">VirtualHost</a></code> directives support
      IPv6 numeric address strings (e.g., "<code>Listen
      [2001:db8::1]:8080</code>").</dd>

      <dt>Filtering</dt>

      <dd>Apache httpd 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 directives using the
      <code>INCLUDES</code> filter in <code class="module"><a href="./mod/mod_include.html">mod_include</a></code>. The
      module <code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code> allows external programs to
      act as filters in much the same way that CGI programs can act as
      handlers.</dd>

      <dt>Multilanguage Error Responses</dt>

      <dd>Error response messages to the browser are now provided in
      several languages, using SSI documents. They may be customized
      by the administrator to achieve a consistent look and feel.</dd>

      <dt>Simplified configuration</dt>

      <dd>Many confusing directives have been simplified. The often
      confusing <code>Port</code> and <code>BindAddress</code> directives
      are gone; only the <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>
      directive is used for IP address binding; the <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code> directive specifies the
      server name and port number only for redirection and vhost
      recognition.</dd>

      <dt>Native Windows NT Unicode Support</dt>

      <dd>Apache httpd 2.0 on Windows NT now uses utf-8 for all filename
      encodings. These directly translate to the underlying Unicode
      file system, providing multilanguage support for all Windows
      NT-based installations, including Windows 2000 and Windows XP.
      <em>This support does not extend to Windows 95, 98 or ME, which
      continue to use the machine's local codepage for filesystem
      access.</em></dd>

      <dt>Regular Expression Library Updated</dt>

      <dd>Apache httpd 2.0 includes the <a href="http://www.pcre.org/">Perl
      Compatible Regular Expression Library</a> (PCRE).  All regular
      expression evaluation now uses the more powerful Perl 5
      syntax.</dd>

    </dl>
  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="module" id="module">Module Enhancements</a></h2>
    

    <dl>
      <dt><code class="module"><a href="./mod/mod_ssl.html">mod_ssl</a></code></dt>

      <dd>New module in Apache httpd 2.0. This module is an interface
      to the SSL/TLS encryption protocols provided by
      OpenSSL.</dd>

      <dt><code class="module"><a href="./mod/mod_dav.html">mod_dav</a></code></dt>

      <dd>New module in Apache httpd 2.0. This module implements the HTTP
      Distributed Authoring and Versioning (DAV) specification for
      posting and maintaining web content.</dd>

      <dt><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code></dt>

      <dd>New module in Apache httpd 2.0.  This module allows supporting
      browsers to request that content be compressed before delivery,
      saving network bandwidth.</dd>

      <dt><code class="module">mod_auth_ldap</code></dt>

      <dd>New module in Apache httpd 2.0.41.  This module allows an LDAP
      database to be used to store credentials for HTTP Basic
      Authentication.  A companion module, <code class="module"><a href="./mod/mod_ldap.html">mod_ldap</a></code>
      provides connection pooling and results caching.</dd>

      <dt><code class="module"><a href="./mod/mod_auth_digest.html">mod_auth_digest</a></code></dt>

      <dd>Includes additional support for session caching across
      processes using shared memory.</dd>

      <dt><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code></dt>

      <dd>New module in Apache httpd 2.0. This experimental module allows
      for character set translation or recoding.</dd>

      <dt><code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code></dt>

      <dd>New module in Apache httpd 2.0. This module includes the
      functionality of <code>mod_mmap_static</code> in Apache HTTP
      Server version 1.3, plus adds further caching abilities.</dd>

      <dt><code class="module"><a href="./mod/mod_headers.html">mod_headers</a></code></dt>

      <dd>This module is much more flexible in Apache httpd 2.0. It can now
      modify request headers used by <code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code>, and
      it can conditionally set response headers.</dd>

      <dt><code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code></dt>

      <dd>The proxy module has been completely rewritten to take
      advantage of the new filter infrastructure and to implement a
      more reliable, HTTP/1.1 compliant proxy. In addition, new
      <code class="directive"><a href="./mod/mod_proxy.html#proxy">&lt;Proxy&gt;</a></code>
      configuration sections provide more readable (and internally
      faster) control of proxied sites; overloaded <code>&lt;Directory
      "proxy:..."&gt;</code> configuration are not supported. The module
      is now divided into specific protocol support modules including
      <code>proxy_connect</code>, <code>proxy_ftp</code> and
      <code>proxy_http</code>.</dd>

      <dt><code class="module"><a href="./mod/mod_negotiation.html">mod_negotiation</a></code></dt>

      <dd>A new <code class="directive"><a href="./mod/mod_negotiation.html#forcelanguagepriority">ForceLanguagePriority</a></code> directive can be used to assure that
      the client receives a single document in all cases, rather than
      NOT ACCEPTABLE or MULTIPLE CHOICES responses. In addition, the
      negotiation and MultiViews algorithms have been cleaned up to
      provide more consistent results and a new form of type map that
      can include document content is provided.</dd>

      <dt><code class="module"><a href="./mod/mod_autoindex.html">mod_autoindex</a></code></dt>

      <dd>Autoindex'ed directory listings can now be configured to
      use HTML tables for cleaner formatting, and allow finer-grained
      control of sorting, including version-sorting, and wildcard
      filtering of the directory listing.</dd>

      <dt><code class="module"><a href="./mod/mod_include.html">mod_include</a></code></dt>

      <dd>New directives allow the default start and end tags for SSI elements
      to be changed and allow for error and time format configuration
      to take place in the main configuration file rather than in the
      SSI document. Results from regular expression parsing and grouping
      (now based on Perl's regular expression syntax) can be retrieved
      using <code class="module"><a href="./mod/mod_include.html">mod_include</a></code>'s variables <code>$0</code>
      .. <code>$9</code>.</dd>

      <dt><code class="module">mod_auth_dbm</code></dt>

      <dd>Now supports multiple types of DBM-like databases using the
      <code class="directive">AuthDBMType</code> directive.</dd>

    </dl>
  </div></div>
<div class="bottomlang">
<p><span>Available Languages: </span><a href="./de/new_features_2_0.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
<a href="./en/new_features_2_0.html" title="English">&nbsp;en&nbsp;</a> |
<a href="./fr/new_features_2_0.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/new_features_2_0.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="./ko/new_features_2_0.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="./pt-br/new_features_2_0.html" hreflang="pt-br" rel="alternate" title="Português (Brasil)">&nbsp;pt-br&nbsp;</a> |
<a href="./tr/new_features_2_0.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our <a href="https://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/new_features_2_0.html';
(function(w, d) {
    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
        d.write('<div id="comments_thread"><\/div>');
        var s = d.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
    }
    else { 
        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
    }
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2023 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
//--><!]]></script>
</body></html>