<?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: 1561569 -->

<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You 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="new_features_2_0.xml.meta">

<title>&#220;bersicht der neuen Funktionen im Apache HTTP Server 2.0</title>

<summary>
  <p>Dieses Dokument beschreibt einige der wichtigsten &#196;nderungen
     des Apache HTTP Servers 2.0 gegen&#252;ber der Version 1.3.</p>
</summary>

<seealso><a href="upgrading.html">Upgrade von 1.3 auf 2.0</a></seealso>

  <section id="core">
    <title>Core-Erweiterungen</title>

    <dl>
      <dt><strong>Unix-Threading</strong></dt>

      <dd>Auf Unix-Systemen mit Unterst&#252;tzung f&#252;r
      POSIX-Threads, kann der Apache httpd jetzt in einem Multi-Process,
      Multi-Threaded Hybrid-Mode gestartet werden. Dies verbessert die
      Skalierf&#228;higkeit f&#252;r viele, jedoch nicht unbedingt alle
      Konfigurationen.</dd>

      <dt><strong>Neues Build-System</strong></dt>

      <dd>Das Build-System wurde komplett auf der Basis von
      <code>autoconf</code> und <code>libtool</code> neu geschrieben.
      Dadurch wird das Konfigurationssystem des Apache httpd dem vieler
      anderer Packages &#228;hnlicher.</dd>

      <dt><strong>Multi-Protokoll-Unterst&#252;tzung</strong></dt>

      <dd>Der Apache HTTP Server stellt jetzt die notwendigen
      Grundfunktionalit&#228;ten bereit, um mehrere Protokolle
      unterst&#252;tzen und verarbeiten zu k&#246;nnen.
      <module>mod_echo</module> wurde hierf&#252;r als Beispiel
      geschrieben.</dd>

      <dt><strong>Bessere Unterst&#252;tzung von
      Nicht-Unix-Plattformen</strong></dt>

      <dd>Der Apache HTTP Server 2.0 ist schneller und stabiler auf
      Nicht-Unix-Plattformen wie BeOS, OS/2 und Windows. Mit der
      Einf&#252;hrung von Plattform-spezifischen <a
      href="mpm.html">Multi-Processing Modulen</a> (MPMs) und der Apache
      Portable Runtime (APR), sind diese Plattformen jetzt in ihrem
      nativen API implementiert, wodurch die Verwendung der h&#228;ufig
      fehlerbehafteten und schlecht funktionierenden
      POSIX-Emulation-Layer vermieden wird.</dd>

      <dt><strong>Neues Apache-httpd API</strong></dt>

      <dd>Das API f&#252;r Module hat sich in 2.0 stark ver&#228;ndert.
      Die meisten der Sortierungs-/Priorit&#228;tsprobleme von Modulen bei
      1.3 sollten nun verschwunden sein. In 2.0 wird hiervon vieles
      automatisch durchgef&#252;hrt. Die Modulsortierung wird jetzt
      &#252;ber einen pre-hook vorgenommen, um mehr Flexibilit&#228;t
      zu bieten. Au&#223;erdem wurden neue API-Calls hinzugef&#252;gt,
      die zus&#228;tzliche Modulf&#228;higkeiten zur Verf&#252;gung stellen,
      ohne den Kern des Apache HTTP Servers anpassen zu m&#252;ssen.</dd>

      <dt><strong>IPv6-Unterst&#252;tzung</strong></dt>

      <dd>Auf Systemen, bei denen die zugrundeliegende Apache Portable
      Runtime-Bibliothek IPv6 unterst&#252;tzt, bekommt der Apache httpd
      standarm&#228;&#223;ig IPv6 Listening Sockets. Zus&#228;tzlich
      unterst&#252;tzen die Konfigurationsanweisungen <directive
      module="mpm_common">Listen</directive>, <directive
      module="core">NameVirtualHost</directive> und <directive
      module="core">VirtualHost</directive> numerische IPv6-Adressangaben
      (z.B., "<code>Listen [2001:db8::1]:8080</code>").</dd>

      <dt><strong>Filterung</strong></dt>

      <dd>Apache-httpd-Module k&#246;nnen jetzt als Filter entwickelt
      und zur Filterung des rein- und rausgehenden Datenstroms des
      Servers eingesetzt werden. Hierdurch kann beispielsweise die
      Ausgabe von CGI-Skripten durch den <code>INCLUDES</code>-Filter
      von <module>mod_include</module> bearbeitet werden und so
      Server-Side Include-Anweisungen ausgef&#252;hrt werden. Das Modul
      <module>mod_ext_filter</module> erlaubt externen Programmen als
      Filter zu agieren, in der gleichen Weise wie CGI-Programme als
      Eingabe dienen k&#246;nnen.</dd>

      <dt><strong>Mehrsprachige Fehlermeldungen</strong></dt>

      <dd>Fehlermeldungen die an den Browser rausgehen, stehen jetzt als
      SSI-Dokumente in verschiedenen Sprachen zur Verf&#252;gung. Sie
      k&#246;nnen bei Bedarf durch den Administrator angepasst werden,
      um ein einheitliches Design zu erreichen.</dd>

      <dt><strong>Vereinfachte Konfiguration</strong></dt>

      <dd>Viele der verwirrenden Konfigurationsanweisungen wurden vereinfacht.
      Die oft f&#252;r Verwirrung sorgenden <code>Port</code>- und
      <code>BindAddress</code>-Anweisungen wurden entfernt.
      Ausschlie&#223;lich die <directive
      module="mpm_common">Listen</directive>-Anweisung wird nun zum
      Setzen von IP-Addressen und Portnummern benutzt.
      Der Servername und die Portnummer, die f&#252;r Weiterleitungen und
      zur Erkennung virtueller Server verwendet werden, werden &#252;ber
      die <directive module="core">ServerName</directive>-Anweisung
      konfiguriert.</dd>

      <dt><strong>Native Windows NT Unicode-Unterst&#252;tzung</strong></dt>

      <dd>Der Apache httpd 2.0 auf Windows NT benutzt jetzt utf-8
      f&#252;r alle Dateinamen-Kodierungen. Diese werden direkt auf das
      zugrundeliegende Unicode-Dateisystem abgebildet, wodurch
      Mehrsprach-Unterst&#252;tzung f&#252;r alle Windows NT-basierten
      Installationen, inklusive Windows 2000 und Windows XP, zur
      Verf&#252;gung gestellt wird.  <em>Diese Unterst&#252;tzung ist
      nicht auf Windows 95, 98 oder ME verf&#252;gbar. Hier wird
      weiterhin die jeweils lokale Codepage des Rechners f&#252;r den
      Zugriff auf das Dateisystem verwendet.</em></dd>

      <dt>Bibliothek f&#252;r regul&#228;re Ausdr&#252;cke aktualisiert</dt>

      <dd>Der Apache httpd 2.0 enth&#228;lt die <a
      href="http://www.pcre.org/">"Perl Compatible
      Regular Expression Library"</a> (PCRE).
      Bei der Auswertung aller regul&#228;ren Ausdr&#252;cke wird nun
      die leistungsf&#228;higere Syntax von Perl 5 verwendet.</dd>

    </dl>
  </section>

  <section id="module">
    <title>Modul-Erweiterungen</title>

    <dl>
      <dt><module>mod_ssl</module></dt>

      <dd>Neues Modul in Apache httpd 2.0. Dieses Modul ist ein
      Interface zu den von OpenSSL bereitgestellten SSL/TLS
      Verschl&#252;sselungs-Protokollen.</dd>

      <dt><module>mod_dav</module></dt>

      <dd>Neues Modul in Apache httpd 2.0. Dieses Modul implementiert
      die HTTP Distributed Authoring and Versioning (DAV) Spezifikation
      zur Erzeugung und Pflege von Web-Inhalten.</dd>

      <dt><module>mod_deflate</module></dt>

      <dd>Neues Modul in Apache httpd 2.0. Dieses Modul erlaubt es
      Browsern, die dies unterst&#252;tzen, eine Komprimierung des
      Inhaltes vor der Auslieferung anzufordern, um so
      Netzwerk-Bandbreite zu sparen.</dd>

      <dt><module outdated="true">mod_auth_ldap</module></dt>

      <dd>Neues Modul in Apache httpd 2.0.41. Diese Modul
      erm&#246;glicht die Verwendung einer LDAP-Datenbank zur
      Speicherung von Berechtigungsdaten f&#252;r die
      HTTP-Basic-Authentication.  Ein Begleitmodul,
      <module>mod_ldap</module>, stellt einen Verbindungs-Pool und die
      Pufferung von Abfrageergebnissen zur Verf&#252;gung.</dd>

      <dt><module>mod_auth_digest</module></dt>

      <dd>Zus&#228;tzliche Unterst&#252;tzung f&#252;r
      prozess&#252;bergreifendes Session-Caching mittels Shared-Memory.
      </dd>

      <dt><module>mod_charset_lite</module></dt>

      <dd>Neues Modul in Apache httpd 2.0.
      Dieses experimentelle Modul erlaubt Zeichensatz-&#220;bersetzungen oder
      -Umschl&#252;sselung.</dd>

      <dt><module>mod_file_cache</module></dt>

      <dd>Neues Modul in Apache httpd 2.0. Dieses Modul beinhaltet die
      Funktionalit&#228;t von <code>mod_mmap_static</code> aus Version
      1.3 des Apache HTTP Server zuz&uuml;glich einiger weiterer
      Caching-Funktionen.</dd>

      <dt><module>mod_headers</module></dt>

      <dd>Dieses Modul ist in Apache httpd 2.0 deutlich flexibler
      geworden. Es kann jetzt die von <module>mod_proxy</module>
      genutzten Request-Header manipulieren und es ist m&#246;glich
      Response-Header auf Basis von definierten Bedingungen zu
      ver&#228;ndern.</dd>

      <dt><module>mod_proxy</module></dt>

      <dd>Das Proxy Modul wurde komplett neu geschrieben um die
      M&#246;glichkeiten der neuen Filter-Funktionalit&#228;t
      auszusch&#246;pfen und um einen zuverl&#228;ssigen Proxy zu haben, der
      den HTTP/1.1-Spezifikationen entspricht. Neue <directive
      module="mod_proxy" type="section">Proxy</directive>
      -Konfigurationsabschnitte bieten eine besser lesbare (und intern
      schnellere) Kontrolle der vermittelten Seiten.
      Die &#252;berladenen <code>&lt;Directory
      "proxy:..."&gt;</code>-Konfigurationen werden nicht
      mehr unterst&#252;tzt. Das Modul ist nun in mehrere Module
      unterteilt, die jeweils ein bestimmtes &#220;bertragungsprotokoll
      unterst&#252;tzen, wie <code>proxy_connect</code>,
      <code>proxy_ftp</code> und <code>proxy_http</code>.</dd>

      <dt><module>mod_negotiation</module></dt>

      <dd>Die neue Konfigurationsanweisung <directive module="mod_negotiation"
      >ForceLanguagePriority</directive>
      kann benutzt werden, um sicherzustellen, dass ein Client auf jeden
      Fall ein einzelnes Dokument, anstatt einer NOT ACCEPTABLE- oder
      MULTIPLE CHOICES-Antwort, bekommt. Zus&#228;tzlich wurden die
      Negotiation- und Multiview-Algorithmen angepasst um einheitlichere
      Ergebnisse zu liefern. Au&#223;erdem wird ein neues
      Type-Map-Format bereitgestellt, das Dokumenteninhalte direkt
      enthalten kann.</dd>

      <dt><module>mod_autoindex</module></dt>

      <dd>Automatisch erzeugte Verzeichnisindizes k&#246;nnen zur besseren
      &#220;bersichtlichkeit durch HTML-Tabellen dargestellt werden.
      Genauere Sortierungen, wie Sortierung nach Versionsnummer und
      Wildcard-Filterung des Verzeichnisindizes werden unterst&#252;tzt.</dd>

      <dt><module>mod_include</module></dt>

      <dd>Neue Anweisungen erlauben es, die Standard Start- und Endtags von
      SSI-Elementen zu &#228;ndern. Zudem k&#246;nnen die Default-Formate
      f&#252;r Fehlermeldungen und Zeitangaben nun ebenfalls in der
      Serverkonfiguration vorgenommen werden. Auf die Ergebnisse der
      Auswertung und Gruppierung von regul&#228;ren Ausdr&#252;cken (jetzt
      auf Basis der Perl-Syntax f&#252;r regul&#228;re Ausdr&#252;cke) kann
      &#252;ber die <module>mod_include</module> Variablen <code>$0</code>
      bis <code>$9</code> zugegriffen werden.</dd>

      <dt><module outdated="true">mod_auth_dbm</module></dt>

      <dd>DBM-&#228;hnliche Datenbanken werden jetzt durch die
      Konfigurationsaweisung <code>AuthDBMType</code>
      unterst&#252;tzt.</dd>
    </dl>
  </section>
</manualpage>
