httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From k...@apache.org
Subject cvs commit: httpd-2.0/docs/manual/vhosts name-based.html.de name-based.xml.de
Date Sun, 01 Jun 2003 20:18:08 GMT
kess        2003/06/01 13:18:08

  Added:       docs/manual/vhosts name-based.html.de name-based.xml.de
  Log:
  new german translation
  
  Reviewed by nd
  
  Revision  Changes    Path
  1.1                  httpd-2.0/docs/manual/vhosts/name-based.html.de
  
  Index: name-based.html.de
  ===================================================================
  <?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="de" xml:lang="de"><head><!--
          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
                This file is generated from xml source: DO NOT EDIT
          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
        -->
  <title>Unterstützung namensbasierter virtueller Hosts - 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/">Module</a> | <a href="../mod/directives.html">Direktiven</a>
| <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossar</a>
| <a href="../sitemap.html">Seitenindex</a></p>
  <p class="apache">Apache HTTP Server Version 2.1</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/">Dokumentation</a> &gt;
<a href="../">Version 2.1</a> &gt; <a href="./">Virtual Hosts</a></div><div
id="page-content"><div id="preamble"><h1>Unterstützung namensbasierter virtueller
Hosts</h1>
  <div class="toplang">
  <p><span>Verfügbare Sprachen: </span><a href="../de/vhosts/name-based.html"
title="Deutsch">&nbsp;de&nbsp;</a> |
  <a href="../en/vhosts/name-based.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a>
|
  <a href="../ja/vhosts/name-based.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a>
|
  <a href="../ko/vhosts/name-based.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
  </div>
  
    <p>Das Dokument beschreibt, wann und wie namensbasierte virtuelle Hosts zu
      verwenden sind.</p>
  </div>
  <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif"
/> <a href="#namevip">Namensbasierte gegenüber IP-basierten
      virtuellen Hosts</a></li>
  <li><img alt="" src="../images/down.gif" /> <a href="#using">Die Verwendung
von namensbasierten virtuellen Hosts</a></li>
  <li><img alt="" src="../images/down.gif" /> <a href="#compat">Kompatibilität
mit älteren Browsern</a></li>
  </ul><h3>Siehe auch</h3><ul class="seealso"><li><a href="ip-based.html">Unterstützung
IP-basierter virtueller
      Hosts</a></li><li><a href="details.html">Tiefergehende Erörterung
der Zuweisung
      virtueller Hosts</a></li><li><a href="mass.html">Dynamisch konfiguriertes
      Massen-Virtual-Hosting</a></li><li><a href="examples.html">Beispiele
für virtuelle Hosts in typischen
      Installationen</a></li><li><a href="examples.html#serverpath">ServerPath-Beispielkonfiguration</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="namevip" id="namevip">Namensbasierte gegenüber IP-basierten
      virtuellen Hosts</a></h2>
  
    <p>IP-basierte virtuelle Hosts verwenden die IP-Adresse der Verbindung, um den
      korrekten virtuellen Host zur Bedienung einer Anfrage zu ermitteln. Folglich 
      benötigen Sie eine IP-Adresse für jeden virtuellen Host. Bei der 
      Verwendung von namensbasierten virtuellen Hosts verläßt sich der 
      Server darauf, dass der Client den Hostnamen als Bestandteil der HTTP-Header 
      angibt. Durch Anwendung dieser Technik können sich mehrere verschiedene 
      Hosts die gleiche IP-Adresse teilen.</p>
  
    <p>Die Verwendung von namensbasierten virtuellen Hosts ist gewöhnlich 
      einfacher. Sie müssen lediglich Ihren DNS-Server darauf einstellen, 
      jeden Hostnamen auf die richtige IP-Adresse abzubilden, und dann den Apache 
      HTTP Server so konfigurieren, dass er die verschiedenen Hostnamen erkennt.
      Namensbasierte virtuelle Hosts entschärfen auch den Bedarf an 
      knappen IP-Adressen. Daher sollten Sie namensbasierte virtuelle Hosts 
      verwenden, sofern kein besonderer Grund dafür existiert, IP-basierte 
      virtuelle Hosts zu wählen. Mögliche Gründe für die 
      Verwendung IP-basierter virtueller Hosts sind:</p>
  
    <ul>
      <li>Einige antike Clients sind nicht kompatibel zu namensbasierten
        virtuellen Hosts. Damit namensbasierte virtuelle Hosts funktionieren,
        muss der Client den HTTP-Host-Header senden. Dies ist bei HTTP/1.1
        vorgeschrieben und in allen modernen HTTP/1.0-Browsern als Erweiterung
        implementiert. Wenn Sie Unterstützung für veraltete Clients
        benötigen und dennoch namensbasierte virtuelle Hosts verwenden,
        dann finden Sie eine mögliche Lösung dafür am Ende des
        Dokuments.</li>
  
      <li>Namensbasierte virtuelle Hosts können aufgrund der Natur des
        SSL-Protokolls nicht mit SSL-gesicherten Servern verwendet werden.</li>
  
      <li>Einige Betriebssysteme und Netzwerkanlagen setzen Techniken zum 
        Bandbreiten-Management ein, die nicht zwischen Hosts unterscheiden
        können, wenn diese nicht auf verschiedenen IP-Adressen liegen.</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="using" id="using">Die Verwendung von namensbasierten virtuellen
Hosts</a></h2>
  
    <table class="related"><tr><th>Referenzierte Module</th><th>Referenzierte
Direktiven</th></tr><tr><td><ul><li><code class="module"><a
href="../mod/core.html">core</a></code></li></ul></td><td><ul><li><code
class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code></li><li><code
class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code></li><li><code
class="directive"><a href="../mod/core.html#serveralias">ServerAlias</a></code></li><li><code
class="directive"><a href="../mod/core.html#servername">ServerName</a></code></li><li><code
class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code></li><li><code
class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code></li></ul></td></tr></table>
  
    <p>Um namensbasierte virtuelle Hosts zu verwenden, müssen Sie die
      IP-Adresse (und möglicherweise den Port) des Servers benennen, an
      der Anfragen für die Hosts entgegengenommen werden. Dies wird mit
      der Direktive <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>
      eingestellt. Im Normalfall, wenn alle IP-Adressen des Server verwendet
      werden sollen, können Sie <code>*</code> als Argument für
      <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>
verwenden. Beachten Sie,
      dass die Angabe einer IP-Adresse in einer <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>-Anweisung
den Server nicht
      automatisch an dieser Adresse lauschen läßt. Lesen Sie bitte "<a href="../bind.html">Bestimmen
der vom Apache verwendeten Adressen und
      Ports</a>" für weitere Details. Zusätzlich muss jede hier
      angegebene IP-Adresse einer Netzwerkkarte des Servers zugeordnet sein.</p>
   
    <p>Der nächste Schritt ist die Erstellung eines <code class="directive"><a
href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Blocks
für jeden einzelnen
      Host, den Sie bedienen wollen. Das Argument der Direktive <code class="directive"><a
href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
sollte das gleiche
      sein wie das Argument der <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>-Anweisung
(d.h. eine IP-Adresse
      oder <code>*</code> für alle Adressen). Innerhalb jedes <code class="directive"><a
href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Blocks
benötigen
      Sie zumindestens eine <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>-Anweisung,
um zu bestimmen, welcher
      Host bedient wird, und eine <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>-Anweisung,
um anzugeben, wo im
      Dateisystem der Inhalt des Hosts abgelegt ist.</p>
  
    <div class="note"><h3>Der Hauptserver verschwindet</h3>
      Wenn Sie virtuelle Hosts zu einem bestehenden Webserver hinzufügen,
      müssen Sie auch einen <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Block
für den bestehenden Host
      <span class="transnote">(<em>Anm.d.Ü.:</em> und bisherigen Hauptserver)</span>
erstellen. 
      Die <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>-
und
      <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>-Anweisungen
zu diesem
      virtuellen Host sollten die gleichen sein wie die globalen <code class="directive"><a
href="../mod/core.html#servername">ServerName</a></code>- und <code class="directive"><a
href="../mod/core.html#documentroot">DocumentRoot</a></code>-Anweisungen. Führen
Sie diesen
      virtuellen Host als erstes in der Konfigurationsdatei auf, so dass er als
      Standard-Host fungiert.
    </div>
  
    <p>Vorausgesetzt, Sie bedienen z.B. die Domain
      <code>www.domain.tld</code> und möchten den virtuellen Host
      <code>www.otherdomain.tld</code> hinzufügen, welcher auf
      die gleiche IP-Adresse zeigt. Dann fügen Sie einfach Folgendes der
      <code>httpd.conf</code> hinzu:</p>
  
  	<div class="example"><p><code>
      NameVirtualHost *<br />
      <br />
      &lt;VirtualHost *&gt;<br />
      <span class="indent">
      ServerName www.domain.tld<br />
      ServerAlias domain.tld *.domain.tld<br />
      DocumentRoot /www/domain<br />
      </span>
      &lt;/VirtualHost&gt;<br />
      <br />
      &lt;VirtualHost *&gt;<br />
      <span class="indent">ServerName www.otherdomain.tld<br />
      DocumentRoot /www/otherdomain<br />
      </span>
      &lt;/VirtualHost&gt;<br />
  	</code></p></div>
  
    <p>Sie können anstelle des <code>*</code> bei den beiden Anweisungen

      <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>
und <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
alternativ eine 
      eindeutige IP-Adresse angeben. Das kann man beispielsweise machen, um 
      einige namensbasierte virtuelle Hosts auf einer IP-Adresse zu betreiben und 
      entweder IP-basierte oder ein anderes Set von namensbasierten virtuellen 
      Hosts auf einer anderen Adresse.</p>
    
    <p>Viele Server wollen unter mehr als einem Namen erreichbar sein. Die 
      Direktive <code class="directive"><a href="../mod/core.html#serveralias">ServerAlias</a></code>,
die innerhalb 
      des <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Abschnittes
angegeben wird,
      ermöglicht dies. Zum Beispiel zeigt die <code class="directive"><a href="../mod/core.html#serveralias">ServerAlias</a></code>-Anweisung
in dem ersten <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Block
oben an, dass die
      aufgeführten Namen alternative Namen sind, die man verwenden kann, um
      das gleiche Webangebot zu erreichen:</p>
  
  	<div class="example"><p><code>
      ServerAlias domain.tld *.domain.tld
  	</code></p></div>
  
    <p>Anfragen für alle Hosts der Domain <code>domain.tld</code> werden
      von dem virtuellen Host <code>www.domain.tld</code> bedient. Die
      Platzhalter <code>*</code> und <code>?</code> können anstelle
      entsprechender Namen verwendet werden. Natürlich können Sie nicht
      einfach Namen erfinden und diese bei <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>
oder <code>ServerAlias</code>
      angeben, Sie müssen zunächst Ihren DNS Server entsprechend
      konfigurieren, dass er diese Namen auf die mit Ihrem Server verknüpfte
      IP-Adresse abbildet.</p>
  
    <p>Und schlußendlich können Sie die Konfiguration der virtuellen
      Hosts mittels Angabe weiterer Direktiven innherhalb der <code class="directive"><a
href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Container
      feineinstellen. Die meisten Direktiven können in diesen Containern
      angegeben werden und verändern dann ausschließlich die
      Konfiguration des entsprechenden virtuellen Hosts. Prüfen Sie den <a href="../mod/directive-dict.html#Context">Kontext</a>
einer Direktive, um
      herauszufinden, ob eine bestimmte Direktive zulässig ist.
      Im <em>Hauptserver-Kontext</em> (außerhalb der <code class="directive"><a
href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Container)
definierte
      Konfigurationsanweisungen werden nur dann angewendet, wenn sie nicht durch
      Einstellungen des virtuellen Hosts außer Kraft gesetzt wurden.</p>
  
    <p>Wenn nun eine Anfrage eintrifft, prüft der Server zuerst, ob sie eine
      IP-Adresse verwendet, die der <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>-Anweisung
entspricht. Ist dies der
      Fall, dann sieht er sich jeden <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Abschnitt
mit einer passenden
      IP-Adresse an und versucht den einen zu finden, dessen <code class="directive"><a
href="../mod/core.html#servername">ServerName</a></code>- oder <code class="directive"><a
href="../mod/core.html#serveralias">ServerAlias</a></code>-Anweisung mit dem
gewünschten
      Hostnamen übereinstimmt. Findet er einen, dann verwendet er die
      Konfiguration dieses Servers. Wird kein passender virtueller Host gefunden,
      dann wird <strong>der erste angegeben virtuelle Host</strong> verwendet,
      dessen IP-Adresse paßt.</p>
  
    <p>Die Folge davon ist, dass der erste aufgeführte virtuelle Host der
      <em>Standard</em>-Virtual-Host ist. Die <code class="directive"><a
href="../mod/core.html#documentroot">DocumentRoot</a></code>-Anweisung des
<em>Hauptservers</em>
      wird <strong>niemals</strong> verwendet, wenn eine IP-Adresse mit einer

      <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>-Anweisung
      übereinstimmt. Wenn Sie eine spezielle Konfiguration für Anfragen
      angeben möchten, die keinem bestimmten virtuellen Host entsprechen,
      packen Sie diese Konfiguration einfach in einen <code class="directive"><a
href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>-Container
und führen diesen als
      erstes in der Konfigurationsdatei auf.</p>
  
  </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"
/></a></div>
  <div class="section">
  <h2><a name="compat" id="compat">Kompatibilität mit älteren Browsern</a></h2>
    
    <p>Wie zuvor erwähnt gibt es einige Clients, die nicht die notwendigen
      Daten senden, mit denen namensbasierte virtuelle Hosts korrekt
      funktionieren. Diesen Clients werden stets die Seiten des ersten, für
      diese IP-Adresse aufgeführten virtuellen Hosts gesendet werden (des
      <cite>primären</cite> namensbasierten virtuellen Hosts).</p>
  
    <div class="note"><h3>Was bedeutet älter?</h3>
      <p>Beachten Sie bitte, wenn wir von älter sprechen, meinen wir auch
      älter. Es ist sehr unwahrscheinlich, dass sie einen dieser Browser
      heutzutage in Verwendung finden werden. Alle aktuellen Browser-Versionen
      senden den <code>Host</code>-Header, so wie er für namensbasierte
      virtuelle Hosts benäötigt wird.</p>
    </div>
  
    <p>Mit der Direktive <code class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code>
existiert  
      eine mögliche Behelfskonstruktion, obgleich sie etwas schwerfällig
      ist:</p>
  
    <p>Beispielkonfiguration:</p>
  
    <div class="example"><p><code>
      NameVirtualHost 111.22.33.44<br />
      <br />
      &lt;VirtualHost 111.22.33.44&gt;<br />
      <span class="indent">
      ServerName www.domain.tld<br />
      ServerPath /domain<br />
      DocumentRoot /web/domain<br />
      </span>
      &lt;/VirtualHost&gt;<br />
    </code></p></div>
  
    <p>Was bedeutet das? Es bedeutet, dass eine Anfrage für eine mit
      "<code>/domain</code>" beginnende URI von dem virtuellen Host
      <code>www.domain.tld</code> bedient wird. Dies heißt, dass die Seiten
      für alle Clients unter <code>http://www.domain.tld/domain/</code>
      abrufbar sind, wenngleich Clients, die den Header <code>Host:</code>
      senden, auch über <code>http://www.domain.tld/</code> auf sie zugreifen
      können.</p>
  
    <p>Legen Sie einen Link auf der Seite Ihres primären virtuellen Hosts zu 
      <code>http://www.domain.tld/domain/</code>, um die Behelfslösung
      verfügbar zu machen. Bei den Seiten der virtuellen Hosts müssen
      Sie dann sicherstellen, entweder außschließlich relative Links
      (<em>z.B.</em> "<code>file.html</code>" oder
      "<code>../icons/image.gif</code>") zu verwenden oder Links, die das
      einleitende <code>/domain/</code> enthalten (<em>z.B.</em>,
      "<code>http://www.domain.tld/domain/misc/file.html</code>" oder
      "<code>/domain/misc/file.html</code>").</p>
  
    <p>Dies erfordert etwas Disziplin, die Befolgung dieser Richtlinien stellt
      jedoch größtenteils sicher, dass Ihre Seiten mit allen Browsern
      funktionieren, alten wie neuen.</p>
  
  </div></div>
  <div class="bottomlang">
  <p><span>Verfügbare Sprachen: </span><a href="../de/vhosts/name-based.html"
title="Deutsch">&nbsp;de&nbsp;</a> |
  <a href="../en/vhosts/name-based.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a>
|
  <a href="../ja/vhosts/name-based.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a>
|
  <a href="../ko/vhosts/name-based.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
  </div><div id="footer">
  <p class="apache">Gepflegt durch das <a href="http://httpd.apache.org/docs-project/">Apache
HTTP Server Documentation Project</a></p>
  <p class="menu"><a href="../mod/">Module</a> | <a href="../mod/directives.html">Direktiven</a>
| <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossar</a>
| <a href="../sitemap.html">Seitenindex</a></p></div>
  </body></html>
  
  
  1.1                  httpd-2.0/docs/manual/vhosts/name-based.xml.de
  
  Index: name-based.xml.de
  ===================================================================
  <?xml version='1.0' encoding='UTF-8' ?>
  <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
  <?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
  <!-- English revision: 1.10 -->
  
  <manualpage metafile="name-based.xml.meta">
  <parentdocument href="./">Virtual Hosts</parentdocument>
  <title>Unterst&uuml;tzung namensbasierter virtueller Hosts</title>
  
  <summary>
    <p>Das Dokument beschreibt, wann und wie namensbasierte virtuelle Hosts zu
      verwenden sind.</p>
  </summary>
  
  <seealso><a href="ip-based.html">Unterst&uuml;tzung IP-basierter virtueller
      Hosts</a></seealso>
  <seealso><a href="details.html">Tiefergehende Er&ouml;rterung der Zuweisung
      virtueller Hosts</a></seealso>
  <seealso><a href="mass.html">Dynamisch konfiguriertes
      Massen-Virtual-Hosting</a></seealso>
  <seealso><a href="examples.html">Beispiele f&uuml;r virtuelle Hosts in typischen
      Installationen</a></seealso>
  <seealso><a href="examples.html#serverpath"
      >ServerPath-Beispielkonfiguration</a></seealso>
  
  <section id="namevip"><title>Namensbasierte gegen&uuml;ber IP-basierten
      virtuellen Hosts</title>
  
    <p>IP-basierte virtuelle Hosts verwenden die IP-Adresse der Verbindung, um den
      korrekten virtuellen Host zur Bedienung einer Anfrage zu ermitteln. Folglich 
      ben&ouml;tigen Sie eine IP-Adresse f&uuml;r jeden virtuellen Host. Bei der 
      Verwendung von namensbasierten virtuellen Hosts verl&auml;&szlig;t sich der

      Server darauf, dass der Client den Hostnamen als Bestandteil der HTTP-Header 
      angibt. Durch Anwendung dieser Technik k&ouml;nnen sich mehrere verschiedene 
      Hosts die gleiche IP-Adresse teilen.</p>
  
    <p>Die Verwendung von namensbasierten virtuellen Hosts ist gew&ouml;hnlich 
      einfacher. Sie m&uuml;ssen lediglich Ihren DNS-Server darauf einstellen, 
      jeden Hostnamen auf die richtige IP-Adresse abzubilden, und dann den Apache 
      HTTP Server so konfigurieren, dass er die verschiedenen Hostnamen erkennt.
      Namensbasierte virtuelle Hosts entsch&auml;rfen auch den Bedarf an 
      knappen IP-Adressen. Daher sollten Sie namensbasierte virtuelle Hosts 
      verwenden, sofern kein besonderer Grund daf&uuml;r existiert, IP-basierte 
      virtuelle Hosts zu w&auml;hlen. M&ouml;gliche Gr&uuml;nde f&uuml;r die

      Verwendung IP-basierter virtueller Hosts sind:</p>
  
    <ul>
      <li>Einige antike Clients sind nicht kompatibel zu namensbasierten
        virtuellen Hosts. Damit namensbasierte virtuelle Hosts funktionieren,
        muss der Client den HTTP-Host-Header senden. Dies ist bei HTTP/1.1
        vorgeschrieben und in allen modernen HTTP/1.0-Browsern als Erweiterung
        implementiert. Wenn Sie Unterst&uuml;tzung f&uuml;r veraltete Clients
        ben&ouml;tigen und dennoch namensbasierte virtuelle Hosts verwenden,
        dann finden Sie eine m&ouml;gliche L&ouml;sung daf&uuml;r am Ende des
        Dokuments.</li>
  
      <li>Namensbasierte virtuelle Hosts k&ouml;nnen aufgrund der Natur des
        SSL-Protokolls nicht mit SSL-gesicherten Servern verwendet werden.</li>
  
      <li>Einige Betriebssysteme und Netzwerkanlagen setzen Techniken zum 
        Bandbreiten-Management ein, die nicht zwischen Hosts unterscheiden
        k&ouml;nnen, wenn diese nicht auf verschiedenen IP-Adressen liegen.</li>
  	</ul>
  
  </section>
  
  <section id="using"><title>Die Verwendung von namensbasierten virtuellen Hosts</title>
  
    <related>
      <modulelist>
      <module>core</module>
      </modulelist>
  
      <directivelist>
        <directive module="core">DocumentRoot</directive>
      	<directive module="core">NameVirtualHost</directive>
      	<directive module="core">ServerAlias</directive>
      	<directive module="core">ServerName</directive>
      	<directive module="core">ServerPath</directive>
        <directive module="core" type="section">VirtualHost</directive>
      </directivelist>
    </related>
  
    <p>Um namensbasierte virtuelle Hosts zu verwenden, m&uuml;ssen Sie die
      IP-Adresse (und m&ouml;glicherweise den Port) des Servers benennen, an
      der Anfragen f&uuml;r die Hosts entgegengenommen werden. Dies wird mit
      der Direktive <directive module="core">NameVirtualHost</directive>
      eingestellt. Im Normalfall, wenn alle IP-Adressen des Server verwendet
      werden sollen, k&ouml;nnen Sie <code>*</code> als Argument f&uuml;r
      <directive module="core">NameVirtualHost</directive> verwenden. Beachten
Sie,
      dass die Angabe einer IP-Adresse in einer <directive
      module="core">NameVirtualHost</directive>-Anweisung den Server nicht
      automatisch an dieser Adresse lauschen l&auml;&szlig;t. Lesen Sie bitte "<a
      href="../bind.html">Bestimmen der vom Apache verwendeten Adressen und
      Ports</a>" f&uuml;r weitere Details. Zus&auml;tzlich muss jede hier
      angegebene IP-Adresse einer Netzwerkkarte des Servers zugeordnet sein.</p>
   
    <p>Der n&auml;chste Schritt ist die Erstellung eines <directive type="section"
      module="core">VirtualHost</directive>-Blocks f&uuml;r jeden einzelnen
      Host, den Sie bedienen wollen. Das Argument der Direktive <directive
      type="section" module="core">VirtualHost</directive> sollte das gleiche
      sein wie das Argument der <directive
      module="core">NameVirtualHost</directive>-Anweisung (d.h. eine IP-Adresse
      oder <code>*</code> f&uuml;r alle Adressen). Innerhalb jedes <directive
      type="section"	module="core">VirtualHost</directive>-Blocks ben&ouml;tigen
      Sie zumindestens eine <directive
      module="core">ServerName</directive>-Anweisung, um zu bestimmen, welcher
      Host bedient wird, und eine <directive
    	module="core">DocumentRoot</directive>-Anweisung, um anzugeben, wo im
      Dateisystem der Inhalt des Hosts abgelegt ist.</p>
  
    <note><title>Der Hauptserver verschwindet</title>
      Wenn Sie virtuelle Hosts zu einem bestehenden Webserver hinzuf&uuml;gen,
      m&uuml;ssen Sie auch einen <directive type="section"	
      module="core">VirtualHost</directive>-Block f&uuml;r den bestehenden Host
      <transnote>und bisherigen Hauptserver</transnote> erstellen. 
      Die <directive module="core">ServerName</directive>- und
      <directive module="core">DocumentRoot</directive>-Anweisungen zu diesem
      virtuellen Host sollten die gleichen sein wie die globalen <directive 
      module="core">ServerName</directive>- und <directive 
      module="core">DocumentRoot</directive>-Anweisungen. F&uuml;hren Sie diesen
      virtuellen Host als erstes in der Konfigurationsdatei auf, so dass er als
      Standard-Host fungiert.
    </note>
  
    <p>Vorausgesetzt, Sie bedienen z.B. die Domain
      <code>www.domain.tld</code> und m&ouml;chten den virtuellen Host
      <code>www.otherdomain.tld</code> hinzuf&uuml;gen, welcher auf
      die gleiche IP-Adresse zeigt. Dann f&uuml;gen Sie einfach Folgendes der
      <code>httpd.conf</code> hinzu:</p>
  
  	<example>
      NameVirtualHost *<br />
      <br />
      &lt;VirtualHost *&gt;<br />
      <indent>
      ServerName www.domain.tld<br />
      ServerAlias domain.tld *.domain.tld<br />
      DocumentRoot /www/domain<br />
      </indent>
      &lt;/VirtualHost&gt;<br />
      <br />
      &lt;VirtualHost *&gt;<br />
      <indent>ServerName www.otherdomain.tld<br />
      DocumentRoot /www/otherdomain<br />
      </indent>
      &lt;/VirtualHost&gt;<br />
  	</example>
  
    <p>Sie k&ouml;nnen anstelle des <code>*</code> bei den beiden Anweisungen

      <directive module="core">NameVirtualHost</directive> und <directive 
      type="section" module="core">VirtualHost</directive> alternativ eine 
      eindeutige IP-Adresse angeben. Das kann man beispielsweise machen, um 
      einige namensbasierte virtuelle Hosts auf einer IP-Adresse zu betreiben und 
      entweder IP-basierte oder ein anderes Set von namensbasierten virtuellen 
      Hosts auf einer anderen Adresse.</p>
    
    <p>Viele Server wollen unter mehr als einem Namen erreichbar sein. Die 
      Direktive <directive module="core">ServerAlias</directive>, die innerhalb

      des <directive type="section" 
      module="core">VirtualHost</directive>-Abschnittes angegeben wird,
      erm&ouml;glicht dies. Zum Beispiel zeigt die <directive 
      module="core">ServerAlias</directive>-Anweisung in dem ersten <directive

      type="section" module="core">VirtualHost</directive>-Block oben an, dass die
      aufgef&uuml;hrten Namen alternative Namen sind, die man verwenden kann, um
      das gleiche Webangebot zu erreichen:</p>
  
  	<example>
      ServerAlias domain.tld *.domain.tld
  	</example>
  
    <p>Anfragen f&uuml;r alle Hosts der Domain <code>domain.tld</code>
werden
      von dem virtuellen Host <code>www.domain.tld</code> bedient. Die
      Platzhalter <code>*</code> und <code>?</code> k&ouml;nnen
anstelle
      entsprechender Namen verwendet werden. Nat&uuml;rlich k&ouml;nnen Sie nicht
      einfach Namen erfinden und diese bei <directive 
      module="core">ServerName</directive> oder <code>ServerAlias</code>
      angeben, Sie m&uuml;ssen zun&auml;chst Ihren DNS Server entsprechend
      konfigurieren, dass er diese Namen auf die mit Ihrem Server verkn&uuml;pfte
      IP-Adresse abbildet.</p>
  
    <p>Und schlu&szlig;endlich k&ouml;nnen Sie die Konfiguration der virtuellen
      Hosts mittels Angabe weiterer Direktiven innherhalb der <directive 
      type="section" module="core">VirtualHost</directive>-Container
      feineinstellen. Die meisten Direktiven k&ouml;nnen in diesen Containern
      angegeben werden und ver&auml;ndern dann ausschlie&szlig;lich die
      Konfiguration des entsprechenden virtuellen Hosts. Pr&uuml;fen Sie den <a
    	href="../mod/directive-dict.html#Context">Kontext</a> einer Direktive, um
      herauszufinden, ob eine bestimmte Direktive zul&auml;ssig ist.
      Im <em>Hauptserver-Kontext</em> (au&szlig;erhalb der <directive 
      type="section" module="core">VirtualHost</directive>-Container) definierte
      Konfigurationsanweisungen werden nur dann angewendet, wenn sie nicht durch
      Einstellungen des virtuellen Hosts au&szlig;er Kraft gesetzt wurden.</p>
  
    <p>Wenn nun eine Anfrage eintrifft, pr&uuml;ft der Server zuerst, ob sie eine
      IP-Adresse verwendet, die der <directive
      module="core">NameVirtualHost</directive>-Anweisung entspricht. Ist dies der
      Fall, dann sieht er sich jeden <directive type="section"
      module="core">VirtualHost</directive>-Abschnitt mit einer passenden
      IP-Adresse an und versucht den einen zu finden, dessen <directive
      module="core">ServerName</directive>- oder <directive
      module="core">ServerAlias</directive>-Anweisung mit dem gew&uuml;nschten
      Hostnamen &uuml;bereinstimmt. Findet er einen, dann verwendet er die
      Konfiguration dieses Servers. Wird kein passender virtueller Host gefunden,
      dann wird <strong>der erste angegeben virtuelle Host</strong> verwendet,
      dessen IP-Adresse pa&szlig;t.</p>
  
    <p>Die Folge davon ist, dass der erste aufgef&uuml;hrte virtuelle Host der
      <em>Standard</em>-Virtual-Host ist. Die <directive
      module="core">DocumentRoot</directive>-Anweisung des <em>Hauptservers</em>
      wird <strong>niemals</strong> verwendet, wenn eine IP-Adresse mit einer

      <directive module="core">NameVirtualHost</directive>-Anweisung
      &uuml;bereinstimmt. Wenn Sie eine spezielle Konfiguration f&uuml;r Anfragen
      angeben m&ouml;chten, die keinem bestimmten virtuellen Host entsprechen,
      packen Sie diese Konfiguration einfach in einen <directive type="section"
      module="core">VirtualHost</directive>-Container und f&uuml;hren diesen
als
      erstes in der Konfigurationsdatei auf.</p>
  
  </section>
  
  <section id="compat"><title>Kompatibilit&auml;t mit &auml;lteren Browsern</title>
    
    <p>Wie zuvor erw&auml;hnt gibt es einige Clients, die nicht die notwendigen
      Daten senden, mit denen namensbasierte virtuelle Hosts korrekt
      funktionieren. Diesen Clients werden stets die Seiten des ersten, f&uuml;r
      diese IP-Adresse aufgef&uuml;hrten virtuellen Hosts gesendet werden (des
      <cite>prim&auml;ren</cite> namensbasierten virtuellen Hosts).</p>
  
    <note><title>Was bedeutet &auml;lter?</title>
      <p>Beachten Sie bitte, wenn wir von &auml;lter sprechen, meinen wir auch
      &auml;lter. Es ist sehr unwahrscheinlich, dass sie einen dieser Browser
      heutzutage in Verwendung finden werden. Alle aktuellen Browser-Versionen
      senden den <code>Host</code>-Header, so wie er f&uuml;r namensbasierte
      virtuelle Hosts ben&auml;&ouml;tigt wird.</p>
    </note>
  
    <p>Mit der Direktive <directive module="core">ServerPath</directive>
existiert  
      eine m&ouml;gliche Behelfskonstruktion, obgleich sie etwas schwerf&auml;llig
      ist:</p>
  
    <p>Beispielkonfiguration:</p>
  
    <example>
      NameVirtualHost 111.22.33.44<br />
      <br />
      &lt;VirtualHost 111.22.33.44&gt;<br />
      <indent>
      ServerName www.domain.tld<br />
      ServerPath /domain<br />
      DocumentRoot /web/domain<br />
      </indent>
      &lt;/VirtualHost&gt;<br />
    </example>
  
    <p>Was bedeutet das? Es bedeutet, dass eine Anfrage f&uuml;r eine mit
      "<code>/domain</code>" beginnende URI von dem virtuellen Host
      <code>www.domain.tld</code> bedient wird. Dies hei&szlig;t, dass die
Seiten
      f&uuml;r alle Clients unter <code>http://www.domain.tld/domain/</code>
      abrufbar sind, wenngleich Clients, die den Header <code>Host:</code>
      senden, auch &uuml;ber <code>http://www.domain.tld/</code> auf sie zugreifen
      k&ouml;nnen.</p>
  
    <p>Legen Sie einen Link auf der Seite Ihres prim&auml;ren virtuellen Hosts zu

      <code>http://www.domain.tld/domain/</code>, um die Behelfsl&ouml;sung
      verf&uuml;gbar zu machen. Bei den Seiten der virtuellen Hosts m&uuml;ssen
      Sie dann sicherstellen, entweder au&szlig;schlie&szlig;lich relative Links
      (<em>z.B.</em> "<code>file.html</code>" oder
      "<code>../icons/image.gif</code>") zu verwenden oder Links, die das
      einleitende <code>/domain/</code> enthalten (<em>z.B.</em>,
      "<code>http://www.domain.tld/domain/misc/file.html</code>" oder
      "<code>/domain/misc/file.html</code>").</p>
  
    <p>Dies erfordert etwas Disziplin, die Befolgung dieser Richtlinien stellt
      jedoch gr&ouml;&szlig;tenteils sicher, dass Ihre Seiten mit allen Browsern
      funktionieren, alten wie neuen.</p>
  
  </section>
  </manualpage>
  
  
  
  
  

Mime
View raw message