blob: 91076abfbb5f38ad1cf4c4e2bfec3de43ccdd86f [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.de.xsl"?>
<!-- English Revision: 1.14 -->
<!--
Copyright 2002-2004 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<manualpage metafile="upgrading.xml.meta">
<title>Upgrade von 1.3 auf 2.0</title>
<summary>
<p>Dieses Dokument dient der Unterst&#252;tzung beim Upgrade. Es
enth&#228;lt die entscheidenden Informationen f&#252;r bisherige
Apache-Nutzer. Diese sind als kurze Anmerkungen
gedacht. Weitere Informationen finden Sie entweder unter
<a href="new_features_2_0.html">Neue Funktionen</a> oder in
den <code>src/CHANGES</code>-Dateien.</p>
</summary>
<seealso><a href="new_features_2_0.html">&Uuml;bersicht der neuen Funktionen
in Apache 2.0</a></seealso>
<section id="compile-time">
<title>&#196;nderungen der Konfiguration bei der Kompilierung</title>
<ul>
<li>Der Apache benutzt jetzt ein <code>autoconf</code>- und
<code>libtool</code>-System zur <a
href="install.html">Konfiguration des
Erstellungsverfahrens</a>. Die Verwendung dieses Systems ist
&#228;hnlich, aber nicht identisch mit dem APACI-System des
Apache 1.3.</li>
<li>Zus&#228;tzlich zu der &#252;blichen Auswahl von Modulen, die
kompiliert werden sollen, wurde der Hauptteil der
Request-Verarbeitung im Apache 2.0 in die <a href="mpm.html">
Multi-Processing-Module</a> (MPMs) verschoben.</li>
</ul>
</section>
<section id="run-time">
<title>&#196;nderungen der Laufzeit-Konfiguration</title>
<ul>
<li>Viele Anweisungen aus dem Serverkern des Apache 1.3 sind
jetzt in den MPMs enthalten. Wenn Sie ein Serververhalten
w&#252;nschen, das demjenigen des Apache 1.3 m&#246;glichst
&#228;hnlich ist, sollten Sie das <module>prefork</module>-MPM
ausw&#228;hlen. Andere MPMs verwenden abweichende Anweisungen
f&#252;r die Prozess-Erstellung und Request-Verarbeitung.</li>
<li>Das <a href="mod/mod_proxy.html">Proxy-Modul</a> wurde
umgearbeitet, um es auf den Stand von HTTP/1.1 zu bringen. Eine
der bedeutendsten &#196;nderungen ist die Platzierung der
Proxy-Zugriffskontrolle innerhalb eines <directive type="section"
module="mod_proxy">Proxy</directive>-Blocks, statt innerhalb eines
<code>&lt;Directory proxy:&gt;</code>-Blocks.</li>
<li>Die Behandlung von <code>PATH_INFO</code> (hinter dem
tats&#228;chlichen Dateinamen angef&#252;gte Pfadangaben) wurde
f&#252;r einige Module ge&#228;ndert. Module, die bisher als Handler
implementiert waren, jetzt aber als Filter implementiert sind,
akzeptieren m&#246;glicherweise keine Requests mit
<code>PATH_INFO</code> mehr. Filter wie <a
href="mod/mod_include.html">INCLUDES</a> oder <a
href="http://www.php.net/">PHP</a> sind gleich oben im
Core-Handler implementiert und weisen deshalb Requests mit
<code>PATH_INFO</code> ab. Sie k&#246;nnen die <directive
module="core">AcceptPathInfo</directive>-Direktive
verwenden, um den Core-Handler zu zwingen, Requests mit
<code>PATH_INFO</code> zu akzeptieren, und dadurch die F&#228;higkeit
wiederherstellen, <code>PATH_INFO</code> in Server Side Includes zu
benutzen.</li>
<li>Die <directive
module="mod_negotiation">CacheNegotiatedDocs</directive>-Direktive
hat jetzt das Argument an (<code>on</code>) oder aus
(<code>off</code>). Die vorhandenen Anweisungen <directive
>CacheNegotiatedDocs</directive> sollten durch
<code>CacheNegotiatedDocs on</code> ersetzt werden.</li>
<li>
Die <directive module="core">ErrorDocument</directive>-Direktive
verwendet kein Anf&#252;hrungszeichen mehr am Anfang des
Arguments, um eine
Textnachricht anzuzeigen. Stattdessen sollten Sie die
Nachricht in doppelte Anf&#252;hrungszeichen einschlie&#223;en.
Zum Beispiel sollten existierende Angaben wie
<example>
ErrorDocument 403 "Eine Nachricht
</example>
durch
<example>
ErrorDocument 403 "Eine Nachricht"
</example>
ersetzt werden.
Solange das zweite Argument kein g&#252;ltiger URL oder
Pfadname ist, wird es als Textnachricht behandelt.
</li>
<li>Die Direktiven <code>AccessConfig</code> und
<code>ResourceConfig</code> sind entfallen.
Diese Direktiven k&#246;nnen durch die <directive
module="core">Include</directive>-Direktive
ersetzt werden, die eine &#228;quivalente Funktionalit&#228;t besitzt.
Wenn Sie die Defaultwerte dieser Direktiven verwendet haben,
ohne sie in die Konfigurationsdateien einzuf&#252;gen, m&#252;ssen Sie
m&#246;glicherweise <code>Include conf/access.conf</code> und
<code>Include conf/srm.conf</code> zu Ihrer <code>httpd.conf</code>
hinzuf&#252;gen. Um sicherzustellen, da&#223; der Apache die
Konfigurationsdateien in der gleichen Reihenfolge liest, wie sie von
den &#228;lteren Direktiven impliziert wurde, sollten die <directive
module="core">Include</directive>-Direktiven ans Ende der
<code>httpd.conf</code> gestellt werden, wobei die Direktive f&#252;r
<code>srm.conf</code> derjenigen f&#252;r <code>access.conf</code>
vorangeht.</li>
<li>Die Direktiven <code>BindAddress</code> und <code>Port</code>
sind entfallen. Eine &#228;quivalente Funktionalit&#228;t wird von der
flexibleren Direktive <directive
module="mpm_common">Listen</directive> bereitgestellt.</li>
<li>Im Apache 1.3 wurde die <code>Port</code>-Direktive au&#223;erdem
dazu verwendet, die Portnummer f&#252;r
selbstreferenzierende URLs festzulegen.
Die neue <directive module="core">ServerName</directive>-Syntax
stellt das Apache-2.0-&#196;quivalent dar:
sie wurde dahingehend ver&#228;ndert, sowohl den Hostnamen
<em>als auch</em> die Portnummer f&#252;r selbstreferenzierende URLs
in einer Direktive angeben zu k&#246;nnen.</li>
<li>Die <code>ServerType</code>-Direktive entf&#228;llt.
Die Methode zum Bedienen der Requests wird nun durch die Auswahl
des MPM ermittelt. Derzeit ist kein MPM daf&#252;r bestimmt, von inetd
gestartet zu werden.</li>
<li>Die Module <code>mod_log_agent</code> und <code>
mod_log_referer</code>, welche die Direktiven <code>AgentLog</code>,
<code>RefererLog</code> und <code>RefererIgnore</code> bereitgestellt
hatten, wurden entfernt. Durch Verwendung der Direktive <directive
module="mod_log_config">CustomLog</directive> aus mod_log_config
sind die Agent- und Refererlogs auch weiterhin verf&#252;gbar.</li>
<li>Die Direktiven <code>AddModule</code> und
<code>ClearModuleList</code> sind entfallen.
Diese Direktiven wurden benutzt, um sicherzustellen, da&#223; die
Module in der richtigen Reihenfolge aktiviert werden k&#246;nnen.
Die neue Apache 2.0 API erlaubt es Modulen, ihre Reihenfolge
explizit anzugeben, und macht diese Direktiven damit
&#252;berfl&#252;ssig.</li>
<li>Die Direktive <code>FancyIndexing</code> wurde entfernt.
Die gleiche Funktionalit&#228;t ist nun mit der Option
<code>FancyIndexing</code> der Direktive <directive
module="mod_autoindex">IndexOptions</directive> verf&#252;gbar.</li>
<li>Die von <module>mod_negotiation</module> bereitgestellte
Content-Negotiation-Technik MultiViews f&#252;hrt nun eine strengere
Dateierkennung durch. Es wird ausschlie&#223;lich unter den
<em>aushandelbaren</em> Dateien gew&#228;hlt. Das bisherige Verhalten
kann jedoch mit der Direktive <directive
module="mod_mime">MultiviewsMatch</directive> wiederhergestellt
werden.</li>
</ul>
</section>
<section id="misc">
<title>Sonstige &#196;nderungen</title>
<ul>
<li>Das Modul <module>mod_auth_digest</module>, das im Apache 1.3
experimentellen Status hatte, ist nun ein Standardmodul.</li>
<li>Das Modul <code>mod_mmap_static</code>, das im Apache 1.3
experimentellen Status hatte, wurde durch das Modul <module
>mod_file_cache</module> ersetzt.</li>
<li>Die Distribution wurde komplett reorganisiert und enth&#228;lt kein
unabh&#228;ngiges <code>src</code>-Verzeichnis mehr. Stattdessen wurden
die Quellcodes logisch unterhalb des Hauptverzeichnisses der
Distribution angeordnet. Installationen des kompilierten Servers
sollten in ein separates Verzeichnis erfolgen.</li>
</ul>
</section>
<section id="third-party">
<title>Module von Drittanbietern</title>
<p>An der API des Apache 2.0 wurden umfassende &#196;nderungen
vorgenommen. Bestehende Module, die f&#252;r die Apache 1.3 API
entwickelt wurden, werden <strong>nicht</strong> ohne Modifikationen mit
der Version 2.0 des Apache zusammenarbeiten. Details sind in der <a
href="developer/">Dokumentation f&#252;r Entwickler</a> beschrieben.</p>
</section>
</manualpage>