> Da ein möglichst unterbruchsfreier Wechsel erwünscht ist, richte ich normalerweise auf beiden Servern (101 und 102)
Ne, Du verstehst es nicht: Nur einer von beiden Server HAT diese IP. Ein Apache ist auf 101 installiert, ein anderer auf 100. Der erste kann nur auf 101, der andere nur auf 100. Diese IP wird dem Server von außen zugewiesen und danach muss der Server neu gestartet werden, sonst bekommt Apache überhaupt keine Anfragen mehr mit, weil er auf der falschen IP lauscht.
Ich versuchs nochmal:
ServerA hat die IP 100. ServerB (andere Hardware) hat die IP 101.
Beide Server hören auf ihre IP (Listen im http.conf).
Bei beiden Servern ist dieselbe Website konfiguriert (
www.xyz.de).
Wenn ich nun von einem Client eine Anfrage mache, wird
www.xyz.de in 100 aufgelöst. Mein Client macht die Anfrage auf den ServerA. ServerA löst die gewünschte Domain (
www.xyz.de) auf und merkt, dass 100 zurückkommt und er auf 100 hört. Die Site wird dargestellt.
Nun ändere ich die DNS Einstellungen für
www.xyz.de auf 101 (bei dem für xyz.de zuständigen DNS Server).
Habe ich nun verschiedene DNS Server beim Client und beim Webserver kann es durch Caching vorkommen, dass der Client weiterhin die IP 100 bekommt, den ServerA anfragt, dieser wieder die Domain auflöst und 101 zurückbekommt. Die Site wird nicht dargestellt, resp. die Domain wird beim Start des Apache mit obenstehender Fehlermeldung (1.Post) ignoriert.
Wenn ich jedoch dem ServerA mit der /etc/hosts Datei vorgaukle dass
www.xyz.de mit 100 aufgelöst wird, startet Apache korrekt und die Site wird angezeigt. (Weil /etc/hosts höhere Prio als der DNS Server hat)...
>weil mein 101er Server ja auf den lokalen DNS-Server zugreifft und da steht, dass die Domain auf den 102er zeigt...
Das wäre dann ein wüster Fehler des Serveradmins, dass er die IP und Domain falsch in einer hosts-Datei eingetragen hat.
Nein, das ist durchaus gewollt, um die Zeitspanne des DNS-Cachings der unzähligen DNS-Server in der ganzen Welt zu überbrücken...
Aber ist ja egal, mein Problem hat eigentlich nichts mit Websites zügeln zu tun...
Hab nochmal ein wenig weitergegooglet....
Dieser Link (
http://httpd.apache.org/docs/1.3/dns-caveats.html) beschreibt mein Problem....
Ich habe es momentan so konfiguriert:
- Code: Select all
<VirtualHost www.abc.dom>
ServerAdmin webgirl@abc.dom
DocumentRoot /www/abc
</VirtualHost>
So wird der Apache das
www.abc.dom auflösen. Wenn der DNS nicht verfügbar ist, gibts wiederum oben genannten Fehler.
mit dieser Konfiguration könnte ich das Problem wohl umgehen:
- Code: Select all
<VirtualHost 10.0.0.1>
ServerName www.abc.dom
ServerAdmin webgirl@abc.dom
DocumentRoot /www/abc
</VirtualHost>
Wobei ich mir nicht sicher bin, ob ich dann mehrere VirtualHost's mit der selben IP haben kann... (denke das geht nicht)
Eine ganze Menge (s.o.). Du verdrehst alles, so funktioniert TCPIP nicht. Zudem kommt noch dazu, dass das Protokoll HTTP/1.0 nicht einmal eine Host-Angabe kennt (Host:
www.xyz.de), sondern es wird nur die IP geöfffnet und ein Dokument angefordert (GET /blablabla). Erst mit HTTP/1.1 wurde der Host eingeführt.
.... mag sein, kenne mich da wirklich noch nicht so aus, aber ich denke ich kenne den Grundmechanismus, auch wenn wir ev. aneinander vorbeidenken/schreiben..... und wenn nicht, bin ich immer erfreut, was neues zu lernen....
Edit: Das dürfte an deiner VirtualHost Konfiguration liegen. Benutzt du in dieser Directive Hostnamen oder IPs?
Hab ich erst nach meinem Post gesehen....
Ich verwende Directive Hostnamen...
Was meinst du, kann ich für mehrere V-Hosts die selbe IP verwenden wenn ich verschiedene ServerName's nehme? Das geht nicht, oder? gibt es eine Lösung für das Problem???
Hole nie der Elben Rat ein, denn sie werden sowohl ja als auch nein sagen.