summaryrefslogtreecommitdiff
path: root/docs/manual/upgrading.html.en
blob: 27cc41dd5251b989c6b8aaf1d42928c407b692de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>Upgrading to 2.0 from 1.3 - Apache HTTP Server</title>
<link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
<link href="./images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<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>
<p class="apache">Apache HTTP Server Version 2.0</p>
<img alt="" src="./images/feather.gif" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
<div id="path">
<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-project/">Documentation</a> &gt; <a href="./">Version 2.0</a></div><div id="page-content"><div id="preamble"><h1>Upgrading to 2.0 from 1.3</h1>
<div class="toplang">
<p><span>Available Languages: </span><a href="./de/upgrading.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
<a href="./en/upgrading.html" title="English">&nbsp;en&nbsp;</a> |
<a href="./fr/upgrading.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/upgrading.html" hreflang="ja" rel="alternate" title="">&nbsp;ja&nbsp;</a> |
<a href="./ko/upgrading.html" hreflang="ko" rel="alternate" title="">&nbsp;ko&nbsp;</a> |
<a href="./ru/upgrading.html" hreflang="ru" rel="alternate" title="">&nbsp;ru&nbsp;</a></p>
</div>

  <p>In order to assist folks upgrading, we maintain a document
  describing information critical to existing Apache users. These
  are intended to be brief notes, and you should be able to find
  more information in either the <a href="new_features_2_0.html">New Features</a> document, or in
  the <code>src/CHANGES</code> file.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#compile-time">Compile-Time Configuration Changes</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#run-time">Run-Time Configuration Changes</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#misc">Misc Changes</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#third-party">Third Party Modules</a></li>
</ul><h3>See also</h3><ul class="seealso"><li><a href="new_features_2_0.html">Overview of new features in
Apache 2.0</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="compile-time" id="compile-time">Compile-Time Configuration Changes</a></h2>
    

    <ul>
      <li>Apache now uses an <code>autoconf</code> and
      <code>libtool</code> system for <a href="install.html">configuring the build processes</a>.
      Using this system is similar to, but not the same as, using
      the APACI system in Apache 1.3.</li>

      <li>In addition to the usual selection of modules which you
      can choose to compile, Apache 2.0 has moved the main part of
      request processing into <a href="mpm.html">Multi-Processing
      Modules</a> (MPMs).</li>
    </ul>
  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="run-time" id="run-time">Run-Time Configuration Changes</a></h2>
    

    <ul>
      <li>Many directives that were in the core server in Apache
      1.3 are now in the MPMs. If you wish the behavior of the
      server to be as similar as possible to the behavior of Apache
      1.3, you should select the <code class="module"><a href="./mod/prefork.html">prefork</a></code> MPM. Other MPMs
      will have different directives to control process creation and request
      processing.</li>

      <li>The <a href="mod/mod_proxy.html">proxy module</a> has been
      revamped to bring it up to HTTP/1.1.  Among the important changes,
      proxy access control is now placed inside a <code class="directive"><a href="./mod/mod_proxy.html#proxy">&lt;Proxy&gt;</a></code> block rather than a
      <code>&lt;Directory proxy:&gt;</code> block.</li>

      <li>The handling of <code>PATH_INFO</code> (trailing path information
      after the true filename) has changed for some modules.  Modules
      that were previously implemented as a handler but are now
      implemented as a filter may no longer accept requests with
      <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
      of the core handler, and therefore reject requests with
      <code>PATH_INFO</code>.  You can use the <code class="directive"><a href="./mod/core.html#acceptpathinfo">AcceptPathInfo</a></code> directive to
      force the core handler to accept requests with <code>PATH_INFO</code>
      and thereby restore the ability to use <code>PATH_INFO</code> in
      server-side includes.</li>

      <li>The <code class="directive"><a href="./mod/mod_negotiation.html#cachenegotiateddocs">CacheNegotiatedDocs</a></code>
      directive now takes the argument <code>on</code> or
      <code>off</code>. Existing instances of <code class="directive">CacheNegotiatedDocs</code> should be
      replaced with <code>CacheNegotiatedDocs on</code>.</li>

      <li>
        The <code class="directive"><a href="./mod/core.html#errordocument">ErrorDocument</a></code>
        directive no longer uses a quote at the beginning of the
        argument to indicate a text message. Instead, you should
        enclose the message in double quotes. For example, existing
        instances of

        <div class="example"><p><code>
          ErrorDocument 403 "Some Message
        </code></p></div>
        should be replaced with

        <div class="example"><p><code>
          ErrorDocument 403 "Some Message"
        </code></p></div>

        As long as the second argument is not a valid URL or
        pathname, it will be treated as a text message.
      </li>

      <li>The <code>AccessConfig</code> and
      <code>ResourceConfig</code> directives no longer exist.
      Existing instances of these directives can be replaced with
      the <code class="directive"><a href="./mod/core.html#include">Include</a></code>
      directive which has equivalent functionality. If you were
      making use of the default values of these directives without
      including them in the configuration files, you may need to
      add <code>Include conf/access.conf</code> and <code>Include
      conf/srm.conf</code> to your <code>httpd.conf</code>. In order to
      assure that Apache reads the configuration files in the same order
      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
      of <code>httpd.conf</code>, with the one for <code>srm.conf</code>
      preceding the one for <code>access.conf</code>.</li>

      <li>The <code>BindAddress</code> and <code>Port</code>
      directives no longer exist.  Equivalent functionality is
      provided with the more flexible
      <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>
      directive.</li>

      <li>Another use of the <code>Port</code>