github.com/krum110487/go-htaccess@v0.0.0-20240316004156-60641c8e7598/tests/data/apache_2_2_34/manual/new_features_2_2.html.en (about)

     1  <?xml version="1.0" encoding="ISO-8859-1"?>
     2  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     3  <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
     4  <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
     5  <!--
     6          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
     7                This file is generated from xml source: DO NOT EDIT
     8          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
     9        -->
    10  <title>Overview of new features in Apache 2.2 - Apache HTTP Server Version 2.2</title>
    11  <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
    12  <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
    13  <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" />
    14  <script src="./style/scripts/prettify.min.js" type="text/javascript">
    15  </script>
    16  
    17  <link href="./images/favicon.ico" rel="shortcut icon" /><link href="http://httpd.apache.org/docs/current/new_features_2_2.html" rel="canonical" /></head>
    18  <body id="manual-page"><div id="page-header">
    19  <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>
    20  <p class="apache">Apache HTTP Server Version 2.2</p>
    21  <img alt="" src="./images/feather.gif" /></div>
    22  <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
    23  <div id="path">
    24  <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.2</a></div><div id="page-content"><div class="retired"><h4>Please note</h4>
    25              <p> This document refers to a legacy release (<strong>2.2</strong>) of Apache httpd. The active release (<strong>2.4</strong>) is documented <a href="http://httpd.apache.org/docs/current">here</a>. If you have not already upgraded, please follow <a href="http://httpd.apache.org/docs/current/upgrading.html">this link</a> for more information.</p>
    26          <p>You may follow <a href="http://httpd.apache.org/docs/current/new_features_2_2.html">this link</a> to go to the current version of this document.</p></div><div id="preamble"><h1>Overview of new features in Apache 2.2</h1>
    27  <div class="toplang">
    28  <p><span>Available Languages: </span><a href="./en/new_features_2_2.html" title="English">&nbsp;en&nbsp;</a> |
    29  <a href="./fr/new_features_2_2.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
    30  <a href="./ja/new_features_2_2.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
    31  <a href="./ko/new_features_2_2.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
    32  <a href="./pt-br/new_features_2_2.html" hreflang="pt-br" rel="alternate" title="Português (Brasil)">&nbsp;pt-br&nbsp;</a> |
    33  <a href="./tr/new_features_2_2.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
    34  </div>
    35  
    36    <p>This document describes some of the major changes between the
    37       2.0 and 2.2 versions of the Apache HTTP Server. For new features since
    38       version 1.3, see the <a href="new_features_2_0.html">2.0 new features</a>
    39       document.</p>
    40  </div>
    41  <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#core">Core Enhancements</a></li>
    42  <li><img alt="" src="./images/down.gif" /> <a href="#module">Module Enhancements</a></li>
    43  <li><img alt="" src="./images/down.gif" /> <a href="#programs">Program Enhancements</a></li>
    44  <li><img alt="" src="./images/down.gif" /> <a href="#developer">Module Developer Changes</a></li>
    45  </ul><ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
    46  <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
    47  <div class="section">
    48  <h2><a name="core" id="core">Core Enhancements</a></h2>
    49      
    50      <dl>
    51  
    52        <dt>Authn/Authz</dt>
    53        <dd>The bundled authentication and authorization modules have
    54            been refactored.  The new <code class="module"><a href="./mod/mod_authn_alias.html">mod_authn_alias</a></code> module
    55            can greatly simplify certain authentication configurations.
    56            See <a href="#module">module name changes</a>, and
    57            <a href="#developer">the developer changes</a> for more
    58            information about how these changes affects users and module
    59            writers.</dd>
    60  
    61        <dt>Caching</dt>
    62        <dd><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code>, <code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code>, and
    63            <code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code> have undergone a lot of changes, and
    64            are now considered production-quality. <code class="program"><a href="./programs/htcacheclean.html">htcacheclean</a></code>
    65            has been introduced to clean up <code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code>
    66            setups.</dd>
    67  
    68        <dt>Configuration</dt>
    69        <dd>The default configuration layout has been simplified and
    70            modularised. Configuration snippets which can be used to
    71            enable commonly-used features are now bundled with Apache, and
    72            can be easily added to the main server config.</dd>
    73  
    74        <dt>Graceful stop</dt>
    75        <dd>The <code class="module"><a href="./mod/prefork.html">prefork</a></code>, <code class="module"><a href="./mod/worker.html">worker</a></code> and
    76            <code class="module"><a href="./mod/event.html">event</a></code>  MPMs now allow <code class="program"><a href="./programs/httpd.html">httpd</a></code>
    77            to be shutdown gracefully via the
    78            <a href="stopping.html#gracefulstop"><code>graceful-stop</code></a>
    79            signal. The <code class="directive"><a href="./mod/mpm_common.html#gracefulshutdowntimeout">GracefulShutdownTimeout</a></code> directive
    80            has been added to specify an optional timeout, after which
    81            <code class="program"><a href="./programs/httpd.html">httpd</a></code> will terminate regardless of the status
    82            of any requests being served.</dd>
    83  
    84        <dt>Proxying</dt>
    85        <dd>The new <code class="module"><a href="./mod/mod_proxy_balancer.html">mod_proxy_balancer</a></code> module provides
    86            load balancing services for <code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code>.
    87            The new <code class="module"><a href="./mod/mod_proxy_ajp.html">mod_proxy_ajp</a></code> module adds support for the
    88            <code>Apache JServ Protocol version 1.3</code> used by
    89            <a href="http://tomcat.apache.org/">Apache Tomcat</a>.</dd>
    90  
    91        <dt>Regular Expression Library Updated</dt>
    92        <dd>Version 5.0 of the
    93            <a href="http://www.pcre.org/">Perl Compatible Regular Expression
    94            Library</a> (PCRE) is now included.  <code class="program"><a href="./programs/httpd.html">httpd</a></code> can be
    95            configured to use a system installation of PCRE by passing the
    96            <code>--with-pcre</code> flag to configure.</dd>
    97  
    98        <dt>Smart Filtering</dt>
    99        <dd><code class="module"><a href="./mod/mod_filter.html">mod_filter</a></code> introduces dynamic configuration
   100            to the output filter chain.  It enables filters to be conditionally
   101            inserted, based on any Request or Response header or environment
   102            variable, and dispenses with the more problematic dependencies and
   103            ordering problems in the 2.0 architecture.</dd>
   104  
   105        <dt>Large File Support</dt>
   106  
   107        <dd><code class="program"><a href="./programs/httpd.html">httpd</a></code> is now built with support for files larger
   108            than 2GB on modern 32-bit Unix systems.  Support for handling
   109            &gt;2GB request bodies has also been added.</dd>
   110  
   111        <dt>Event MPM</dt>
   112        <dd>The <code class="module"><a href="./mod/event.html">event</a></code> MPM uses a separate thread to handle
   113            Keep Alive requests and accepting connections.  Keep Alive requests
   114            have traditionally required httpd to dedicate a worker to handle it.
   115            This dedicated worker could not be used again until the Keep Alive
   116            timeout was reached.</dd>
   117  
   118        <dt>SQL Database Support</dt>
   119        <dd><p><code class="module"><a href="./mod/mod_dbd.html">mod_dbd</a></code>, together with the <code>apr_dbd</code>
   120            framework, brings direct SQL support to modules that need it.
   121            Supports connection pooling in threaded MPMs.</p>
   122  	  </dd>
   123  
   124      </dl>
   125    </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   126  <div class="section">
   127  <h2><a name="module" id="module">Module Enhancements</a></h2>
   128      
   129      <dl>
   130        <dt>Authn/Authz</dt>
   131        <dd>Modules in the aaa directory have been renamed and offer
   132            better support for digest authentication.  For example,
   133            <code>mod_auth</code> is now split into
   134            <code class="module"><a href="./mod/mod_auth_basic.html">mod_auth_basic</a></code> and
   135            <code class="module"><a href="./mod/mod_authn_file.html">mod_authn_file</a></code>; <code>mod_auth_dbm</code> is now
   136            called <code class="module"><a href="./mod/mod_authn_dbm.html">mod_authn_dbm</a></code>; <code>mod_access</code> has
   137            been renamed <code class="module"><a href="./mod/mod_authz_host.html">mod_authz_host</a></code>.  There is also a new
   138            <code class="module"><a href="./mod/mod_authn_alias.html">mod_authn_alias</a></code> module for simplifying
   139            certain authentication configurations.
   140        </dd>
   141  
   142        <dt><code class="module"><a href="./mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code></dt>
   143        <dd>This module is a port of the 2.0
   144            <code>mod_auth_ldap</code> module to the 2.2 <code>Authn/Authz</code>
   145            framework.  New features include using LDAP attribute values and
   146            complicated search filters in the
   147            <code class="directive"><a href="./mod/core.html#require">Require</a></code> directive.</dd>
   148  
   149        <dt><code class="module"><a href="./mod/mod_authz_owner.html">mod_authz_owner</a></code></dt>
   150        <dd>A new module that authorizes access to files based
   151            on the owner of the file on the file system</dd>
   152  
   153        <dt><code class="module"><a href="./mod/mod_version.html">mod_version</a></code></dt>
   154        <dd>A new module that allows configuration blocks to be enabled based on the
   155            version number of the running server.</dd>
   156  
   157        <dt><code class="module"><a href="./mod/mod_info.html">mod_info</a></code></dt>
   158        <dd>Added a new <code>?config</code> argument which will show
   159            the configuration directives as parsed by Apache, including
   160            their file name and line number.  The module also
   161            shows the order of all request hooks and additional
   162            build information, similar to <code>httpd -V</code>.</dd>
   163  
   164        <dt><code class="module"><a href="./mod/mod_ssl.html">mod_ssl</a></code></dt>
   165        
   166        <dd>Added a support for
   167           <a href="http://www.ietf.org/rfc/rfc2817.txt">RFC 2817</a>, which
   168           allows connections to upgrade from clear text to TLS encryption.</dd>
   169  
   170        <dt><code class="module"><a href="./mod/mod_imagemap.html">mod_imagemap</a></code></dt>
   171        <dd><code>mod_imap</code> has been renamed to
   172            <code class="module"><a href="./mod/mod_imagemap.html">mod_imagemap</a></code> to avoid user confusion.</dd>
   173      </dl>
   174  
   175    </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   176  <div class="section">
   177  <h2><a name="programs" id="programs">Program Enhancements</a></h2>
   178      
   179      <dl>
   180        <dt><code class="program"><a href="./programs/httpd.html">httpd</a></code></dt>
   181        <dd>A new command line option <code>-M</code> has been added that
   182        lists all modules that are loaded based on the current
   183        configuration. Unlike the <code>-l</code> option, this list
   184        includes DSOs loaded via <code class="module"><a href="./mod/mod_so.html">mod_so</a></code>.</dd>
   185  
   186        <dt><code class="program"><a href="./programs/httxt2dbm.html">httxt2dbm</a></code></dt>
   187        <dd>A new program used to generate dbm files from text input,
   188            for use in <code class="directive"><a href="./mod/mod_rewrite.html#rewritemap">RewriteMap</a></code>
   189            with the <code>dbm</code> map type.</dd>
   190      </dl>
   191    </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   192  <div class="section">
   193  <h2><a name="developer" id="developer">Module Developer Changes</a></h2>
   194      
   195      <dl>
   196        <dt><a class="glossarylink" href="./glossary.html#apr" title="see glossary">APR</a> 1.0 API</dt>
   197  
   198        <dd>Apache 2.2 uses the APR 1.0 API.  All deprecated functions and
   199            symbols have been removed from <code>APR</code> and
   200            <code>APR-Util</code>. For details, see the
   201            <a href="http://apr.apache.org/">APR Website</a>.</dd>
   202  
   203        <dt>Authn/Authz</dt>
   204        <dd>The bundled authentication and authorization modules have
   205            been renamed along the following lines:
   206            <ul>
   207            <li><code>mod_auth_*</code> -&gt; Modules that implement an HTTP
   208            authentication mechanism</li>
   209            <li><code>mod_authn_*</code> -&gt; Modules that provide a backend
   210            authentication provider</li>
   211            <li><code>mod_authz_*</code> -&gt; Modules that implement
   212            authorization (or access)</li>
   213            <li><code>mod_authnz_*</code> -&gt; Module that implements both
   214            authentication &amp; authorization</li>
   215            </ul>
   216            There is a new authentication backend provider
   217            scheme which greatly eases the construction of new authentication
   218            backends.</dd>
   219  
   220        <dt>Connection Error Logging</dt>
   221  
   222        <dd>A new function, <code>ap_log_cerror</code> has been added to log
   223            errors that occur with the client's connection.  When logged,
   224            the message includes the client IP address.</dd>
   225  
   226        <dt>Test Configuration Hook Added</dt>
   227  
   228        <dd>A new hook, <code>test_config</code> has been added to aid
   229            modules that want to execute special code only when the user passes
   230            <code>-t</code> to <code class="program"><a href="./programs/httpd.html">httpd</a></code>.</dd>
   231  
   232        <dt>Set Threaded MPM's Stacksize</dt>
   233  
   234        <dd>A new directive, <code class="directive"><a href="./mod/mpm_common.html#threadstacksize">ThreadStackSize</a></code> has been added to
   235            set the stack size on all threaded MPMs.  This is required
   236            for some third-party modules on platforms with small default
   237            thread stack size.</dd>
   238  
   239        <dt>Protocol handling for output filters</dt>
   240  
   241        <dd>In the past, every filter has been responsible for ensuring
   242            that it generates the correct response headers where it affects
   243            them.  Filters can now delegate common protocol management to
   244            <code class="module"><a href="./mod/mod_filter.html">mod_filter</a></code>, using the
   245            <code>ap_register_output_filter_protocol</code> or
   246            <code>ap_filter_protocol</code> calls.</dd>
   247  
   248        <dt>Monitor hook added</dt>
   249        <dd>Monitor hook enables modules to run regular/scheduled jobs
   250            in the parent (root) process.</dd>
   251  
   252        <dt>Regular expression API changes</dt>
   253  
   254        <dd>The <code>pcreposix.h</code> header is no longer available;
   255        it is replaced by the new <code>ap_regex.h</code> header.  The
   256        POSIX.2 <code>regex.h</code> implementation exposed by the old
   257        header is now available under the <code>ap_</code> namespace
   258        from <code>ap_regex.h</code>.  Calls to <code>regcomp</code>,
   259        <code>regexec</code> and so on can be replaced by calls to
   260        <code>ap_regcomp</code>, <code>ap_regexec</code>.</dd>
   261  
   262        <dt>DBD Framework (SQL Database API)</dt>
   263  
   264        <dd><p>With Apache 1.x and 2.0, modules requiring an SQL backend
   265        had to take responsibility for managing it themselves.  Apart
   266        from reinventing the wheel, this can be very inefficient, for
   267        example when several modules each maintain their own connections.</p>
   268  
   269        <p>Apache 2.1 and later provides the <code>ap_dbd</code> API for
   270        managing database connections (including optimised strategies
   271        for threaded and unthreaded MPMs), while APR 1.2 and later provides
   272        the <code>apr_dbd</code> API for interacting with the database.</p>
   273  
   274        <p>New modules SHOULD now use these APIs for all SQL database
   275        operations.  Existing applications SHOULD be upgraded to use it
   276        where feasible, either transparently or as a recommended option
   277        to their users.</p></dd>
   278      </dl>
   279    </div></div>
   280  <div class="bottomlang">
   281  <p><span>Available Languages: </span><a href="./en/new_features_2_2.html" title="English">&nbsp;en&nbsp;</a> |
   282  <a href="./fr/new_features_2_2.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
   283  <a href="./ja/new_features_2_2.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
   284  <a href="./ko/new_features_2_2.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
   285  <a href="./pt-br/new_features_2_2.html" hreflang="pt-br" rel="alternate" title="Português (Brasil)">&nbsp;pt-br&nbsp;</a> |
   286  <a href="./tr/new_features_2_2.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
   287  </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 again 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 Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
   288  <script type="text/javascript"><!--//--><![CDATA[//><!--
   289  var comments_shortname = 'httpd';
   290  var comments_identifier = 'http://httpd.apache.org/docs/2.2/new_features_2_2.html';
   291  (function(w, d) {
   292      if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
   293          d.write('<div id="comments_thread"><\/div>');
   294          var s = d.createElement('script');
   295          s.type = 'text/javascript';
   296          s.async = true;
   297          s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
   298          (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
   299      }
   300      else { 
   301          d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
   302      }
   303  })(window, document);
   304  //--><!]]></script></div><div id="footer">
   305  <p class="apache">Copyright 2017 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>
   306  <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[//><!--
   307  if (typeof(prettyPrint) !== 'undefined') {
   308      prettyPrint();
   309  }
   310  //--><!]]></script>
   311  </body></html>