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 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>Upgrading to 2.0 from 1.3 - Apache HTTP Server</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
12 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
13 <body id="manual-page"><div id="page-header">
14 <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p>
15 <p class="apache">Apache HTTP Server Version 2.0</p>
16 <img alt="" src="./images/feather.gif" /></div>
17 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
19 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="./">Version 2.0</a></div><div id="page-content"><div id="preamble"><h1>Upgrading to 2.0 from 1.3</h1>
21 <p><span>Available Languages: </span><a href="./de/upgrading.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
22 <a href="./en/upgrading.html" title="English"> en </a> |
23 <a href="./es/upgrading.html" hreflang="es" rel="alternate" title="Español"> es </a> |
24 <a href="./fr/upgrading.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
25 <a href="./ja/upgrading.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
26 <a href="./ko/upgrading.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
27 <a href="./ru/upgrading.html" hreflang="ru" rel="alternate" title="Russian"> ru </a></p>
30 <p>In order to assist folks upgrading, we maintain a document
31 describing information critical to existing Apache users. These
32 are intended to be brief notes, and you should be able to find
33 more information in either the <a href="new_features_2_0.html">New Features</a> document, or in
34 the <code>src/CHANGES</code> file.</p>
36 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#compile-time">Compile-Time Configuration Changes</a></li>
37 <li><img alt="" src="./images/down.gif" /> <a href="#run-time">Run-Time Configuration Changes</a></li>
38 <li><img alt="" src="./images/down.gif" /> <a href="#misc">Misc Changes</a></li>
39 <li><img alt="" src="./images/down.gif" /> <a href="#third-party">Third Party Modules</a></li>
40 </ul><h3>See also</h3><ul class="seealso"><li><a href="new_features_2_0.html">Overview of new features in
41 Apache 2.0</a></li></ul></div>
42 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
44 <h2><a name="compile-time" id="compile-time">Compile-Time Configuration Changes</a></h2>
48 <li>Apache now uses an <code>autoconf</code> and
49 <code>libtool</code> system for <a href="install.html">configuring the build processes</a>.
50 Using this system is similar to, but not the same as, using
51 the APACI system in Apache 1.3.</li>
53 <li>In addition to the usual selection of modules which you
54 can choose to compile, Apache 2.0 has moved the main part of
55 request processing into <a href="mpm.html">Multi-Processing
56 Modules</a> (MPMs).</li>
58 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
60 <h2><a name="run-time" id="run-time">Run-Time Configuration Changes</a></h2>
64 <li>Many directives that were in the core server in Apache
65 1.3 are now in the MPMs. If you wish the behavior of the
66 server to be as similar as possible to the behavior of Apache
67 1.3, you should select the <code class="module"><a href="./mod/prefork.html">prefork</a></code> MPM. Other MPMs
68 will have different directives to control process creation and request
71 <li>The <a href="mod/mod_proxy.html">proxy module</a> has been
72 revamped to bring it up to HTTP/1.1. Among the important changes,
73 proxy access control is now placed inside a <code class="directive"><a href="./mod/mod_proxy.html#proxy"><Proxy></a></code> block rather than a
74 <code><Directory proxy:></code> block.</li>
76 <li>The handling of <code>PATH_INFO</code> (trailing path information
77 after the true filename) has changed for some modules. Modules
78 that were previously implemented as a handler but are now
79 implemented as a filter may no longer accept requests with
80 <code>PATH_INFO</code>. Filters such as <a href="mod/mod_include.html">INCLUDES</a> or <a href="http://www.php.net/">PHP</a> are implemented on top
81 of the core handler, and therefore reject requests with
82 <code>PATH_INFO</code>. You can use the <code class="directive"><a href="./mod/core.html#acceptpathinfo">AcceptPathInfo</a></code> directive to
83 force the core handler to accept requests with <code>PATH_INFO</code>
84 and thereby restore the ability to use <code>PATH_INFO</code> in
85 server-side includes.</li>
87 <li>The <code class="directive"><a href="./mod/mod_negotiation.html#cachenegotiateddocs">CacheNegotiatedDocs</a></code>
88 directive now takes the argument <code>on</code> or
89 <code>off</code>. Existing instances of <code class="directive">CacheNegotiatedDocs</code> should be
90 replaced with <code>CacheNegotiatedDocs on</code>.</li>
93 The <code class="directive"><a href="./mod/core.html#errordocument">ErrorDocument</a></code>
94 directive no longer uses a quote at the beginning of the
95 argument to indicate a text message. Instead, you should
96 enclose the message in double quotes. For example, existing
99 <div class="example"><p><code>
100 ErrorDocument 403 "Some Message
102 should be replaced with
104 <div class="example"><p><code>
105 ErrorDocument 403 "Some Message"
108 As long as the second argument is not a valid URL or
109 pathname, it will be treated as a text message.
112 <li>The <code>AccessConfig</code> and
113 <code>ResourceConfig</code> directives no longer exist.
114 Existing instances of these directives can be replaced with
115 the <code class="directive"><a href="./mod/core.html#include">Include</a></code>
116 directive which has equivalent functionality. If you were
117 making use of the default values of these directives without
118 including them in the configuration files, you may need to
119 add <code>Include conf/access.conf</code> and <code>Include
120 conf/srm.conf</code> to your <code>httpd.conf</code>. In order to
121 assure that Apache reads the configuration files in the same order
122 as was implied by the older directives, the <code class="directive"><a href="./mod/core.html#include">Include</a></code> directives should be placed at the end
123 of <code>httpd.conf</code>, with the one for <code>srm.conf</code>
124 preceding the one for <code>access.conf</code>.</li>
126 <li>The <code>BindAddress</code> and <code>Port</code>
127 directives no longer exist. Equivalent functionality is
128 provided with the more flexible
129 <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>
132 <li>Another use of the <code>Port</code>
133 directive in Apache-1.3 was setting the port number to be used
134 in self-referential URL's. The Apache-2.0 equivalent is
135 the new <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code>
136 syntax: it has been changed to allow specifying both the
137 hostname <em>and</em> the port number for self-referential URL's
138 in one directive.</li>
140 <li>The <code>ServerType</code> directive no longer exists.
141 The method used to serve requests is now determined by the
142 selection of MPM. There is currently no MPM designed to be
143 launched by inetd.</li>
145 <li>The <code>mod_log_agent</code> and <code>mod_log_referer</code>
146 modules which provided the <code>AgentLog</code>,
147 <code>RefererLog</code> and <code>RefererIgnore</code> directives have
148 been removed. Agent and referer logs are still available using the
149 <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code>
150 directive of <code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code>.</li>
152 <li>The <code>AddModule</code> and
153 <code>ClearModuleList</code> directives no longer exist.
154 These directives were used to ensure that modules could be
155 enabled in the correct order. The new Apache 2.0 API allows
156 modules to explicitly specify their ordering, eliminating the
157 need for these directives.</li>
159 <li>The <code>FancyIndexing</code> directive has been removed.
160 The same functionality is available through the
161 <code>FancyIndexing</code> option to the <code class="directive"><a href="./mod/mod_autoindex.html#indexoptions">IndexOptions</a></code>
164 <li>The MultiViews content-negotiation technique provided by
165 <code class="module"><a href="./mod/mod_negotiation.html">mod_negotiation</a></code> has become more strict in its
166 default file matching. It will select only from <em>negotiable</em>
167 files. The old behavior can be restored using the <code class="directive"><a href="./mod/mod_mime.html#multiviewsmatch">MultiviewsMatch</a></code> directive.</li>
169 <li>(<em>since version 2.0.51</em>)
170 <p>The functionality of the <code>ErrorHeader</code> directive was
171 put together with the <code class="directive"><a href="./mod/mod_headers.html#header">Header</a></code>
172 directive, since it was a misnomer. Use</p>
174 <div class="example"><p><code>
175 Header always set foo bar
178 <p>instead to get the desired behaviour.</p></li>
180 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
181 <div class="section">
182 <h2><a name="misc" id="misc">Misc Changes</a></h2>
186 <li>The module <code class="module"><a href="./mod/mod_auth_digest.html">mod_auth_digest</a></code>, which was
187 experimental in Apache 1.3, is now a standard module.</li>
189 <li>The <code>mod_mmap_static</code> module, which was experimental in
190 Apache 1.3, has been replaced with <code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code>.</li>
192 <li>The distribution has been completely reorganized so that
193 it no longer contains an independent <code>src</code>
194 directory. Instead, the sources are logically organized under
195 the main distribution directory, and installations of the
196 compiled server should be directed to a separate
199 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
200 <div class="section">
201 <h2><a name="third-party" id="third-party">Third Party Modules</a></h2>
204 <p>Extensive changes were made to the server API in Apache 2.0.
205 Existing modules designed for the Apache 1.3 API will
206 <strong>not</strong> work in Apache 2.0 without modification.
207 Details are provided in the <a href="developer/">developer
208 documentation</a>.</p>
210 <div class="bottomlang">
211 <p><span>Available Languages: </span><a href="./de/upgrading.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
212 <a href="./en/upgrading.html" title="English"> en </a> |
213 <a href="./es/upgrading.html" hreflang="es" rel="alternate" title="Español"> es </a> |
214 <a href="./fr/upgrading.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
215 <a href="./ja/upgrading.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
216 <a href="./ko/upgrading.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
217 <a href="./ru/upgrading.html" hreflang="ru" rel="alternate" title="Russian"> ru </a></p>
218 </div><div id="footer">
219 <p class="apache">Copyright 2009 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>
220 <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p></div>