upgrading.xml revision b610e7ab8504702f26ed1c184cbb893b20253621
97a9a944b5887e91042b019776c41d5dd74557aferikabele<!DOCTYPE manualpage SYSTEM "/style/manualpage.dtd">
97a9a944b5887e91042b019776c41d5dd74557aferikabele<?xml-stylesheet type="text/xsl" href="/style/manual.en.xsl"?>
a945f35eff8b6a88009ce73de6d4c862ce58de3cslive<!-- $LastChangedRevision$ -->
fe64b2ba25510d8c9dba5560a2d537763566cf40nd Licensed to the Apache Software Foundation (ASF) under one or more
fe64b2ba25510d8c9dba5560a2d537763566cf40nd contributor license agreements. See the NOTICE file distributed with
fe64b2ba25510d8c9dba5560a2d537763566cf40nd this work for additional information regarding copyright ownership.
fe64b2ba25510d8c9dba5560a2d537763566cf40nd The ASF licenses this file to You under the Apache License, Version 2.0
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen (the "License"); you may not use this file except in compliance with
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen the License. You may obtain a copy of the License at
fe64b2ba25510d8c9dba5560a2d537763566cf40nd Unless required by applicable law or agreed to in writing, software
fe64b2ba25510d8c9dba5560a2d537763566cf40nd distributed under the License is distributed on an "AS IS" BASIS,
fe64b2ba25510d8c9dba5560a2d537763566cf40nd WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
3f08db06526d6901aa08c110b5bc7dde6bc39905nd See the License for the specific language governing permissions and
fe64b2ba25510d8c9dba5560a2d537763566cf40nd limitations under the License.
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung <p>In order to assist folks upgrading, we maintain a document
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd describing information critical to existing Apache HTTP Server users. These
fe64b2ba25510d8c9dba5560a2d537763566cf40nd are intended to be brief notes, and you should be able to find
fe64b2ba25510d8c9dba5560a2d537763566cf40nd more information in either the <a
fe64b2ba25510d8c9dba5560a2d537763566cf40nd href="new_features_2_4.html">New Features</a> document, or in
fe64b2ba25510d8c9dba5560a2d537763566cf40nd the <code>src/CHANGES</code> file. Application and module developers
fe64b2ba25510d8c9dba5560a2d537763566cf40nd can find a summary of API changes in the <a href="developer/new_api_2_4.html"
06ba4a61654b3763ad65f52283832ebf058fdf1cslive <p>This document describes changes in server behavior that might
06ba4a61654b3763ad65f52283832ebf058fdf1cslive require you to change your configuration or how you use the server
06ba4a61654b3763ad65f52283832ebf058fdf1cslive in order to continue using 2.4 as you are currently using 2.2.
06ba4a61654b3763ad65f52283832ebf058fdf1cslive To take advantage of new features in 2.4, see the New Features
06ba4a61654b3763ad65f52283832ebf058fdf1cslive document.</p>
06ba4a61654b3763ad65f52283832ebf058fdf1cslive <p>This document describes only the changes from 2.2 to 2.4. If you
06ba4a61654b3763ad65f52283832ebf058fdf1cslive are upgrading from version 2.0, you should also consult the <a
26556019355f6e007335c2d5d57013ac24ebf651nd href="http://httpd.apache.org/docs/2.2/upgrading.html">2.0 to 2.2
fe64b2ba25510d8c9dba5560a2d537763566cf40nd<seealso><a href="new_features_2_4.html">Overview of new features in
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <p>The compilation process is very similar to the one used in
fe64b2ba25510d8c9dba5560a2d537763566cf40nd version 2.2. Your old <code>configure</code> command line (as
fe64b2ba25510d8c9dba5560a2d537763566cf40nd found in <code>build/config.nice</code> in the installed server
fe64b2ba25510d8c9dba5560a2d537763566cf40nd directory) can be used in most cases. There are some changes in
fe64b2ba25510d8c9dba5560a2d537763566cf40nd the default settings. Some details of changes:</p>
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <li>These modules have been removed: mod_authn_default,
fe64b2ba25510d8c9dba5560a2d537763566cf40nd mod_authz_default, mod_mem_cache. If you were using
fe64b2ba25510d8c9dba5560a2d537763566cf40nd mod_mem_cache in 2.2, look at <module>mod_cache_disk</module> in
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <li>All load balancing implementations have been moved to
fe64b2ba25510d8c9dba5560a2d537763566cf40nd individual, self-contained mod_proxy submodules, e.g.
fe64b2ba25510d8c9dba5560a2d537763566cf40nd to build and load any of these that your configuration
06ba4a61654b3763ad65f52283832ebf058fdf1cslive <li>Platform support has been removed for BeOS, TPF, and
06ba4a61654b3763ad65f52283832ebf058fdf1cslive even older platforms such as A/UX, Next, and Tandem. These were
d43535d2b691837e9c1e2f01e42b76aa0a1ab98frbowen believed to be broken anyway.</li>
97a9a944b5887e91042b019776c41d5dd74557aferikabele <li>configure: dynamic modules (DSO) are built by default</li>
d43535d2b691837e9c1e2f01e42b76aa0a1ab98frbowen <li>configure: By default, only a basic set of modules is loaded. The
d43535d2b691837e9c1e2f01e42b76aa0a1ab98frbowen other <directive>LoadModule</directive> directives are commented
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <li>configure: the "most" module set gets built by default</li>
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <li>configure: the "reallyall" module set adds developer modules
fe64b2ba25510d8c9dba5560a2d537763566cf40nd to the "all" set</li>
fe64b2ba25510d8c9dba5560a2d537763566cf40nd </section>
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <p>There have been significant changes in authorization configuration,
fe64b2ba25510d8c9dba5560a2d537763566cf40nd and other minor configuration changes, that could require changes to your 2.2
fe64b2ba25510d8c9dba5560a2d537763566cf40nd configuration files before using them for 2.4.</p>
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <p>Any configuration file that uses authorization will likely
fe64b2ba25510d8c9dba5560a2d537763566cf40nd need changes.</p>
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <p>You should review the <a href="howto/auth.html">Authentication,
fe64b2ba25510d8c9dba5560a2d537763566cf40nd Authorization and Access Control Howto</a>, especially the section
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <a href="howto/auth.html#beyond">Beyond just authorization</a>
fe64b2ba25510d8c9dba5560a2d537763566cf40nd which explains the new mechanisms for controlling the order in
fe64b2ba25510d8c9dba5560a2d537763566cf40nd which the authorization directives are applied.</p>
06ba4a61654b3763ad65f52283832ebf058fdf1cslive <p>In 2.2, access control based on client hostname, IP address,
06ba4a61654b3763ad65f52283832ebf058fdf1cslive and other characteristics of client requests was done using the
06ba4a61654b3763ad65f52283832ebf058fdf1cslive directives <directive
06ba4a61654b3763ad65f52283832ebf058fdf1cslive module="mod_access_compat">Order</directive>, <directive
06ba4a61654b3763ad65f52283832ebf058fdf1cslive module="mod_access_compat">Allow</directive>, <directive
06ba4a61654b3763ad65f52283832ebf058fdf1cslive module="mod_access_compat">Deny</directive>, and <directive
26556019355f6e007335c2d5d57013ac24ebf651nd <p>In 2.4, such access control is done in the same way as other
26556019355f6e007335c2d5d57013ac24ebf651nd authorization checks, using the new module
fe64b2ba25510d8c9dba5560a2d537763566cf40nd <module>mod_authz_host</module>. The old access control idioms
fe64b2ba25510d8c9dba5560a2d537763566cf40nd should be replaced by the new authentication mechanisms,
fe64b2ba25510d8c9dba5560a2d537763566cf40nd although for compatibility with old configurations, the new
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd module <module>mod_access_compat</module> is provided.</p>
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung <p>Here are some examples of old and new ways to do the same
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd access control.</p>
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen Order deny,allow<br />
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen Deny from all
fe64b2ba25510d8c9dba5560a2d537763566cf40nd </example>
Allow from example.org
Require host example.org
<li><code>Invalid command 'User', perhaps misspelled or defined by a module not included in the server configuration</code> - load module <module>mod_unixd</module></li>
<li><code>Invalid command 'Require', perhaps misspelled or defined by a module not included in the server configuration</code>, or
<code>Invalid command 'Order', perhaps misspelled or defined by a module not included in the server configuration</code>
- load module <module>mod_access_compat</module>, or update configuration to 2.4 authorization directives.</li>
<li><code>Ignoring deprecated use of DefaultType in line NN of /path/to/httpd.conf</code> - remove <directive module="core">DefaultType</directive>