<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML><HEAD>
<TITLE>New features with Apache 2.0</TITLE>
</HEAD>

<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" 
      VLINK="#000080" ALINK="#FF0000">
<!--#include virtual="header.html" -->
<H1 ALIGN="CENTER">Overview of New Features in Apache 2.0</H1>

<P>Enhancements: <A HREF="#core">Core</A> | <a href="#module">Module</a>

<P><HR>

<H2><A NAME="core">Core Enhancements:</A></H2>

<DL>
<DT><STRONG>Unix Threading</STRONG>
<DD>On Unix systems with POSIX threads support, Apache can now run in a
    hybrid multiprocess, multithreaded mode. This should improve
    scalability. 

<DT><STRONG>New Build System</STRONG>
<DD>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.

<DT><STRONG>Multiprotocol Support</STRONG>
<DD>Apache now has some of the infrastructure in place to support serving
    multiple protocols. mod_echo has been written as an example.

<DT><STRONG>Better support for non-Unix platforms</STRONG> <DD>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 <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.

<DT><STRONG>New Apache API</STRONG>
<DD>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.

<DT><STRONG>IPv6 Support</STRONG></DT>
<DD>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
    &lt;VirtualHost&gt; directives support IPv6 numeric address
    strings (e.g., "Listen [fe80::1]:8080").</DD>

<DT><STRONG>Filtering</STRONG></DT>
<DD>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.</DD>

</DL>

<P><HR>

<H2><A NAME="module">Module Enhancements:</A></H2>

<dl>

<dt><strong>mod_auth_db</strong>
<dd>Now supports Berkely DB 3.0

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

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

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

<dt><strong>mod_file_cache</strong>
<dd>New module in Apache 2.0.  This module includes the functionality
of mod_mmap_static in Apache 1.3, plus adds further caching abilities.

<dt><strong>mod_headers</strong> 
<dd>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.

</dl>

<!--#include virtual="footer.html" -->
</BODY>
</HTML>

