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 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297
|
<?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>Untersttzung namensbasierter virtueller Hosts - Apache HTTP Server Version 2.4</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 rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<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="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossar</a> | <a href="../sitemap.html">Seitenindex</a></p>
<p class="apache">Apache HTTP Server Version 2.4</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP-Server</a> > <a href="http://httpd.apache.org/docs/">Dokumentation</a> > <a href="../">Version 2.4</a> > <a href="./">Virtual Hosts</a></div><div id="page-content"><div id="preamble"><h1>Untersttzung namensbasierter virtueller Hosts</h1>
<div class="toplang">
<p><span>Verfgbare Sprachen: </span><a href="../de/vhosts/name-based.html" title="Deutsch"> de </a> |
<a href="../en/vhosts/name-based.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/vhosts/name-based.html" hreflang="fr" rel="alternate" title="Franais"> fr </a> |
<a href="../ja/vhosts/name-based.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../ko/vhosts/name-based.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="../tr/vhosts/name-based.html" hreflang="tr" rel="alternate" title="Trke"> tr </a></p>
</div>
<div class="outofdate">Diese bersetzung ist mglicherweise
nicht mehr aktuell. Bitte prfen Sie die englische Version auf
die neuesten nderungen.</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 gegenber 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">Kompatibilitt mit lteren Browsern</a></li>
</ul><h3>Siehe auch</h3><ul class="seealso"><li><a href="ip-based.html">Untersttzung IP-basierter virtueller
Hosts</a></li><li><a href="details.html">Tiefergehende Errterung der Zuweisung
virtueller Hosts</a></li><li><a href="mass.html">Dynamisch konfiguriertes
Massen-Virtual-Hosting</a></li><li><a href="examples.html">Beispiele fr virtuelle Hosts in typischen
Installationen</a></li><li><a href="examples.html#serverpath">ServerPath-Beispielkonfiguration</a></li></ul><ul class="seealso"><li><a href="#comments_section">Kommentare</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 gegenber 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
bentigen Sie eine IP-Adresse fr jeden virtuellen Host. Bei der
Verwendung von namensbasierten virtuellen Hosts verlt sich der
Server darauf, dass der Client den Hostnamen als Bestandteil der HTTP-Header
angibt. Durch Anwendung dieser Technik knnen sich mehrere verschiedene
Hosts die gleiche IP-Adresse teilen.</p>
<p>Die Verwendung von namensbasierten virtuellen Hosts ist gewhnlich
einfacher. Sie mssen 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 entschrfen auch den Bedarf an
knappen IP-Adressen. Daher sollten Sie namensbasierte virtuelle Hosts
verwenden, sofern kein besonderer Grund dafr existiert, IP-basierte
virtuelle Hosts zu whlen. Mgliche Grnde fr 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 Untersttzung fr veraltete Clients
bentigen und dennoch namensbasierte virtuelle Hosts verwenden,
dann finden Sie eine mgliche Lsung dafr am Ende des
Dokuments.</li>
<li>Namensbasierte virtuelle Hosts knnen 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
knnen, 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"><VirtualHost></a></code></li></ul></td></tr></table>
<p>Um namensbasierte virtuelle Hosts zu verwenden, mssen Sie die
IP-Adresse (und mglicherweise den Port) des Servers benennen, an
der Anfragen fr 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, knnen Sie <code>*</code> als Argument fr
<code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code> verwenden. Wenn Sie
vorhaben, mehrere Ports zu nutzen (etwa wenn SSL luft), sollten
Sie dem Argument einen Port hinzufgen, wie zum Beispiel
<code>*:80</code>. 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 lt. Lesen Sie bitte "<a href="../bind.html">Bestimmen der vom Apache verwendeten Adressen und
Ports</a>" fr weitere Details. Zustzlich muss jede hier
angegebene IP-Adresse einer Netzwerkkarte des Servers zugeordnet sein.</p>
<p>Der nchste Schritt ist die Erstellung eines <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code>-Blocks fr jeden einzelnen
Host, den Sie bedienen wollen. Das Argument der Direktive <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></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> fr alle Adressen). Innerhalb jedes <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code>-Blocks bentigen
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 hinzufgen,
mssen Sie auch einen <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code>-Block fr 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. Fhren 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 mchten den virtuellen Host
<code>www.otherdomain.tld</code> hinzufgen, welcher auf
die gleiche IP-Adresse zeigt. Dann fgen Sie einfach Folgendes der
<code>httpd.conf</code> hinzu:</p>
<div class="example"><p><code>
NameVirtualHost *:80<br />
<br />
<VirtualHost *:80><br />
<span class="indent">
ServerName www.domain.tld<br />
ServerAlias domain.tld *.domain.tld<br />
DocumentRoot /www/domain<br />
</span>
</VirtualHost><br />
<br />
<VirtualHost *:80><br />
<span class="indent">ServerName www.otherdomain.tld<br />
DocumentRoot /www/otherdomain<br />
</span>
</VirtualHost><br />
</code></p></div>
<p>Sie knnen 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"><VirtualHost></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"><VirtualHost></a></code>-Abschnittes angegeben wird,
ermglicht 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"><VirtualHost></a></code>-Block oben an, dass die
aufgefhrten 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 fr 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> knnen anstelle
entsprechender Namen verwendet werden. Natrlich knnen 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 mssen zunchst Ihren DNS Server entsprechend
konfigurieren, dass er diese Namen auf die mit Ihrem Server verknpfte
IP-Adresse abbildet.</p>
<p>Und schluendlich knnen Sie die Konfiguration der virtuellen
Hosts mittels Angabe weiterer Direktiven innherhalb der <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code>-Container
feineinstellen. Die meisten Direktiven knnen in diesen Containern
angegeben werden und verndern dann ausschlielich die
Konfiguration des entsprechenden virtuellen Hosts. Prfen Sie den <a href="../mod/directive-dict.html#Context">Kontext</a> einer Direktive, um
herauszufinden, ob eine bestimmte Direktive zulssig ist.
Im <em>Hauptserver-Kontext</em> (auerhalb der <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code>-Container) definierte
Konfigurationsanweisungen werden nur dann angewendet, wenn sie nicht durch
Einstellungen des virtuellen Hosts auer Kraft gesetzt wurden.</p>
<p>Wenn nun eine Anfrage eintrifft, prft 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"><VirtualHost></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 gewnschten
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 pat.</p>
<p>Die Folge davon ist, dass der erste aufgefhrte 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 fr Anfragen
angeben mchten, die keinem bestimmten virtuellen Host entsprechen,
packen Sie diese Konfiguration einfach in einen <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code>-Container und fhren 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">Kompatibilitt mit lteren Browsern</a></h2>
<p>Wie zuvor erwhnt 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, fr
diese IP-Adresse aufgefhrten virtuellen Hosts gesendet werden (des
<cite>primren</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 fr namensbasierte
virtuelle Hosts bentigt wird.</p>
</div>
<p>Mit der Direktive <code class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code> existiert
eine mgliche Behelfskonstruktion, obgleich sie etwas schwerfllig
ist:</p>
<p>Beispielkonfiguration:</p>
<div class="example"><p><code>
NameVirtualHost 111.22.33.44<br />
<br />
<VirtualHost 111.22.33.44><br />
<span class="indent">
ServerName www.domain.tld<br />
ServerPath /domain<br />
DocumentRoot /web/domain<br />
</span>
</VirtualHost><br />
</code></p></div>
<p>Was bedeutet das? Es bedeutet, dass eine Anfrage fr eine mit
"<code>/domain</code>" beginnende URI von dem virtuellen Host
<code>www.domain.tld</code> bedient wird. Dies heit, dass die Seiten
fr 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
knnen.</p>
<p>Legen Sie einen Link auf der Seite Ihres primren virtuellen Hosts zu
<code>http://www.domain.tld/domain/</code>, um die Behelfslsung
verfgbar zu machen. Bei den Seiten der virtuellen Hosts mssen
Sie dann sicherstellen, entweder auschlielich 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 grtenteils sicher, dass Ihre Seiten mit allen Browsern
funktionieren, alten wie neuen.</p>
</div></div>
<div class="bottomlang">
<p><span>Verfgbare Sprachen: </span><a href="../de/vhosts/name-based.html" title="Deutsch"> de </a> |
<a href="../en/vhosts/name-based.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/vhosts/name-based.html" hreflang="fr" rel="alternate" title="Franais"> fr </a> |
<a href="../ja/vhosts/name-based.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../ko/vhosts/name-based.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="../tr/vhosts/name-based.html" hreflang="tr" rel="alternate" title="Trke"> tr </a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Kommentare</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/vhosts/name-based.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2014 The Apache Software Foundation.<br />Lizenziert unter der <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Module</a> | <a href="../mod/directives.html">Direktiven</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossar</a> | <a href="../sitemap.html">Seitenindex</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>
|