home *** CD-ROM | disk | FTP | other *** search
/ PC World 2003 May / PCWorld_2003-05_cd.bin / Komunik / apache / apache_2.0.45-win32-x86-no_ssl.msi / Data.Cab / F232706_upgrading.xml < prev    next >
Extensible Markup Language  |  2003-02-28  |  8KB  |  187 lines

  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. <manualpage>
  5. <relativepath href="."/>
  6.  
  7. <title>Upgrading to 2.0 from 1.3</title>
  8.  
  9. <summary>
  10.   <p>In order to assist folks upgrading, we maintain a document
  11.   describing information critical to existing Apache users. These
  12.   are intended to be brief notes, and you should be able to find
  13.   more information in either the <a
  14.   href="new_features_2_0.html">New Features</a> document, or in
  15.   the <code>src/CHANGES</code> file.</p>
  16. </summary>
  17. <seealso><a href="new_features_2_0.html">Overview of new features in
  18. Apache 2.0</a></seealso>
  19.  
  20.   <section id="compile-time">
  21.     <title>Compile-Time Configuration Changes</title>
  22.  
  23.     <ul>
  24.       <li>Apache now uses an <code>autoconf</code> and
  25.       <code>libtool</code> system for <a
  26.       href="install.html">configuring the build processes</a>.
  27.       Using this system is similar to, but not the same as, using
  28.       the APACI system in Apache 1.3.</li>
  29.  
  30.       <li>In addition to the usual selection of modules which you
  31.       can choose to compile, Apache 2.0 has moved the main part of
  32.       request processing into <a href="mpm.html">Multi-Processing
  33.       Modules</a> (MPMs).</li>
  34.     </ul>
  35.   </section>
  36.  
  37.   <section id="run-time">
  38.     <title>Run-Time Configuration Changes</title>
  39.  
  40.     <ul>
  41.       <li>Many directives that were in the core server in Apache
  42.       1.3 are now in the MPMs. If you wish the behavior of the
  43.       server to be as similar as possible to the behavior of Apache
  44.       1.3, you should select the <module>prefork</module> MPM. Other MPMs
  45.       will have different directives to control process creation and request
  46.       processing.</li>
  47.  
  48.       <li>The <a href="mod/mod_proxy.html">proxy module</a> has been
  49.       revamped to bring it up to HTTP/1.1.  Among the important changes,
  50.       proxy access control is now placed inside a <directive type="section"
  51.       module="mod_proxy">Proxy</directive> block rather than a
  52.       <code><Directory proxy:></code> block.</li>
  53.  
  54.       <li>The handling of <code>PATH_INFO</code> (trailing path information
  55.       after the true filename) has changed for some modules.  Modules
  56.       that were previously implemented as a handler but are now
  57.       implemented as a filter may no longer accept requests with
  58.       <code>PATH_INFO</code>.  Filters such as <a
  59.       href="mod/mod_include.html">INCLUDES</a> or <a
  60.       href="http://www.php.net/">PHP</a> are implemented on top
  61.       of the core handler, and therefore reject requests with
  62.       <code>PATH_INFO</code>.  You can use the <directive
  63.       module="core">AcceptPathInfo</directive> directive to
  64.       force the core handler to accept requests with <code>PATH_INFO</code>
  65.       and thereby restore the ability to use <code>PATH_INFO</code> in
  66.       server-side includes.</li>
  67.  
  68.       <li>The <directive
  69.       module="mod_negotiation">CacheNegotiatedDocs</directive>
  70.       directive now takes the argument <code>on</code> or
  71.       <code>off</code>. Existing instances of <directive
  72.       >CacheNegotiatedDocs</directive> should be
  73.       replaced with <code>CacheNegotiatedDocs on</code>.</li>
  74.  
  75.       <li>
  76.         The <directive module="core">ErrorDocument</directive>
  77.         directive no longer uses a quote at the beginning of the
  78.         argument to indicate a text message. Instead, you should
  79.         enclose the message in double quotes. For example, existing
  80.         instances of
  81.  
  82.         <example>
  83.           ErrorDocument 403 "Some Message
  84.         </example>
  85.         should be replaced with
  86.  
  87.         <example>
  88.           ErrorDocument 403 "Some Message"
  89.         </example>
  90.  
  91.         As long as the second argument is not a valid URL or
  92.         pathname, it will be treated as a text message.
  93.       </li>
  94.  
  95.       <li>The <code>AccessConfig</code> and
  96.       <code>ResourceConfig</code> directives no longer exist.
  97.       Existing instances of these directives can be replaced with
  98.       the <directive module="core">Include</directive>
  99.       directive which has equivalent functionality. If you were
  100.       making use of the default values of these directives without
  101.       including them in the configuration files, you may need to
  102.       add <code>Include conf/access.conf</code> and <code>Include
  103.       conf/srm.conf</code> to your <code>httpd.conf</code>. In order to
  104.       assure that Apache reads the configuration files in the same order
  105.       as was implied by the older directives, the <directive
  106.       module="core">Include</directive> directives should be placed at the end
  107.       of <code>httpd.conf</code>, with the one for <code>srm.conf</code>
  108.       preceding the one for <code>access.conf</code>.</li>
  109.  
  110.       <li>The <code>BindAddress</code> and <code>Port</code>
  111.       directives no longer exist.  Equivalent functionality is
  112.       provided with the more flexible
  113.       <directive module="mpm_common">Listen</directive>
  114.       directive.</li>
  115.  
  116.       <li>Another use of the <code>Port</code>
  117.       directive in Apache-1.3 was setting the port number to be used
  118.       in self-referential URL's. The Apache-2.0 equivalent is
  119.       the new <directive module="core">ServerName</directive>
  120.       syntax: it has been changed to allow specifying both the
  121.       hostname <em>and</em> the port number for self-referential URL's
  122.       in one directive.</li>
  123.  
  124.       <li>The <code>ServerType</code> directive no longer exists.
  125.       The method used to serve requests is now determined by the
  126.       selection of MPM. There is currently no MPM designed to be
  127.       launched by inetd.</li>
  128.  
  129.       <li>The <code>mod_log_agent</code> and <code>mod_log_referer</code>
  130.       modules which provided the <code>AgentLog</code>,
  131.       <code>RefererLog</code> and <code>RefererIgnore</code> directives have
  132.       been removed. Agent and referer logs are still available using the
  133.       <directive module="mod_log_config">CustomLog</directive>
  134.       directive of <module>mod_log_config</module>.</li>
  135.  
  136.       <li>The <code>AddModule</code> and
  137.       <code>ClearModuleList</code> directives no longer exist.
  138.       These directives were used to ensure that modules could be
  139.       enabled in the correct order. The new Apache 2.0 API allows
  140.       modules to explicitly specify their ordering, eliminating the
  141.       need for these directives.</li>
  142.  
  143.       <li>The <code>FancyIndexing</code> directive has been removed.
  144.       The same functionality is available through the
  145.       <code>FancyIndexing</code> option to the <directive
  146.       module="mod_autoindex">IndexOptions</directive>
  147.       directive.</li>
  148.  
  149.       <li>The MultiViews content-negotiation technique provided by
  150.       <module>mod_negotiation</module> has become more strict in its
  151.       default file matching.  It will select only from <em>negotiable</em>
  152.       files.  The old behavior can be restored using the <directive
  153.       module="mod_mime">MultiviewsMatch</directive> directive.</li>
  154.  
  155.     </ul>
  156.   </section>
  157.  
  158.   <section id="misc">
  159.     <title>Misc Changes</title>
  160.  
  161.     <ul>
  162.       <li>The module <module>mod_auth_digest</module>, which was
  163.       experimental in Apache 1.3, is now a standard module.</li>
  164.  
  165.       <li>The <code>mod_mmap_static</code> module, which was experimental in
  166.       Apache 1.3, has been replaced with <module>mod_file_cache</module>.</li>
  167.  
  168.       <li>The distribution has been completely reorganized so that
  169.       it no longer contains an independent <code>src</code>
  170.       directory. Instead, the sources are logically organized under
  171.       the main distribution directory, and installations of the
  172.       compiled server should be directed to a separate
  173.       directory.</li>
  174.     </ul>
  175.   </section>
  176.  
  177.   <section id="third-party">
  178.     <title>Third Party Modules</title>
  179.  
  180.     <p>Extensive changes were made to the server API in Apache 2.0.
  181.     Existing modules designed for the Apache 1.3 API will
  182.     <strong>not</strong> work in Apache 2.0 without modification.
  183.     Details are provided in the <a href="developer/">developer
  184.     documentation</a>.</p>
  185.   </section>
  186. </manualpage>
  187.