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