Apache Problem mit virtuellen Hosts
Hallo, da ich nicht der Apache Spezialist bin, habe ich ein kleines Problem. Da alles zu funktionieren scheint, ist dies im Augenblick nicht ganz so kritisch, aber ich hätte mit der Zeit doch eine saubere Lösung. Derzeit verwende ich für jeden (!!) Virtuellen Host eine Direktive: NameVirtualHost www.mydomain.de <Virtual Host www.mydomain.de mydomain.de> ... Was mit der Apache natürlich mit der Warnung: [warn] NameVirtualHost www.mydomain.de:80 has no VirtualHosts Das ganze ist mir scon fast klar, denn ich brauche ja nicht für jeden Virtuellen Host eine NameVirtualHost Direktive. Wenn ich diese aber wegnehme und nur noch eine NameVirtualHost 1.2.3.4 verwende, bekomme ich nette Meldungen a.la: [warn] VirtualHost mydomain.de:80 overlaps with VirtualHost www.mydomain:80, the first precedence, perhaps you need a NameVirtualHost directive. Interessant ist, dass er hier immer die www.* gegenüber den Namen ohne www anmeckert. Diese habe ich ja in einer Direktive: <Virtual Host www.mydomain.de mydomain.de> ... Da die virtuellen Hosts aber zu funktionieren scheinen, nehme ich die obrigen Meldungen nicht besonders ernst und ignoriere diese erst einmal, aber dies hinterlässt doch ein mulmiges Gefühl. (Aber auch nicht mehr, als ich ehh schon habe, da ich einen Apache für mich betreue und keine Zeit habe, mich hier reinzuknien). Vielleicht hat ja jemand eine kleine Idee. Durch google habe ich schon gefunden, dass ich wohl auch eine Listen Direktive brauche und so, aber die hat nichts geändert .... Mit den besten Grüßen, Konrad Neitzel -- SoftMediaTec GmbH Tel: 0172 / 689 31 45 Fax: 069 / 90 50 99 53
Hallo Konrad, Am Samstag, 22. Juni 2002 15:40 schrieb Konrad Neitzel:
Derzeit verwende ich für jeden (!!) Virtuellen Host eine Direktive: NameVirtualHost www.mydomain.de <Virtual Host www.mydomain.de mydomain.de> ...
Warum? Wo soll da der Vorteil liegen? In meinen httpd.conf's steht das jeweils nur /einmal/. NameVirtualHost <IP-Nummer des Servers> Dann _muß_ aber auch mindestens /ein/ Virtueller Server vorhanden sein. Ansonsten macht das keinen Sinn (aber das hast Du ja schon erkannt). bis dahin Martin Mewes -- http://www.mamemu.de/ Registered Linux User:274764 - http://counter.li.org/
Hallo Martin!
Martin Mewes
Am Samstag, 22. Juni 2002 15:40 schrieb Konrad Neitzel:
Derzeit verwende ich für jeden (!!) Virtuellen Host eine Direktive: NameVirtualHost www.mydomain.de <Virtual Host www.mydomain.de mydomain.de> ...
Warum? Wo soll da der Vorteil liegen?
Vorteil? Dass man es nicht braucht, habe ich ja auch erkannt. Ich habe verschiedene Szenarien ausprobiert und immer Warnmeldungen bekommen. Nun suche ich halt eine Konfig, so dass ich keinerlei Warnungen im Errorlog mehr kriege ...
In meinen httpd.conf's steht das jeweils nur /einmal/.
NameVirtualHost <IP-Nummer des Servers> Dann _muß_ aber auch mindestens /ein/ Virtueller Server vorhanden sein. Ansonsten macht das keinen Sinn (aber das hast Du ja schon erkannt). Jo - habe ich ja getestet. Aber hier hat der Apache auch Warnungen ausgespuckt. Und da ich mich für eine Lösung mit Warnmeldungen entscheiden musste, habe ich einfach die letzte, die ich hatte, etwas getestet und da sie prinzipiell macht, was sie machen muss, habe ich diese gelassen.
Mich würde nun nur einmal interessieren, wie ich die einzelnen Meldungen weg kriege bzw. was ich falsch machen könnte. Mit den besten Grüßen, Konrad Neitzel -- SoftMediaTec GmbH Tel: 0172 / 689 31 45 Fax: 069 / 90 50 99 53
* On Sat, 22 Jun 2002 at 16:40 +0300, Konrad Neitzel wrote:
da ich nicht der Apache Spezialist bin, habe ich ein kleines Problem. Da alles zu funktionieren scheint, ist dies im Augenblick nicht ganz so kritisch, aber ich hätte mit der Zeit doch eine saubere Lösung.
Derzeit verwende ich für jeden (!!) Virtuellen Host eine Direktive: NameVirtualHost www.mydomain.de <Virtual Host www.mydomain.de mydomain.de> ...
Bei mir sieht das so aus:
NameVirtualHost 192.168.1.3:80
Adalbert Michelic schrieb:
* On Sat, 22 Jun 2002 at 16:40 +0300, Konrad Neitzel wrote:
[...ApacheConfig-Auszüge zu virtualhosts...]
d.h. ich glaube in die
-Direktive gehört die IP-Adresse rein. Ist aber nur ein Schuß ins Blaue ...
Korrekt. Konrad Neitzel hat ein Mischmasch aus Name-based Virtual Hosts und IP-based Virtual Hosts. Leider ist keines von beiden richtig konfiguriert. http://httpd.apache.org/docs/vhosts/index.html sollte ihm da weiterhelfen.
Hallo Liste!
Markus Kolb
Adalbert Michelic schrieb:
* On Sat, 22 Jun 2002 at 16:40 +0300, Konrad Neitzel wrote:
[...ApacheConfig-Auszüge zu virtualhosts...]
d.h. ich glaube in die
-Direktive gehört die IP-Adresse rein. Ist aber nur ein Schuß ins Blaue ...
Korrekt.
Konrad Neitzel hat ein Mischmasch aus Name-based Virtual Hosts und IP-based Virtual Hosts. Leider ist keines von beiden richtig konfiguriert.
http://httpd.apache.org/docs/vhosts/index.html sollte ihm da weiterhelfen.
Danke für die Antwort und den Link.
Auf der Seite war ich schon und habe dort auch schon versucht, mein
Problem zu lösen, aber dazu war ich bisher nicht im Stande.
Mir scheint es, dass ich hier noch einiges durcheinander werfe.
Erstmal ist ganz klar, dass ich nur eine IP habe und daher nur eine
Name-based Virtual Hosts Konfiguration in Frage kommt.
Ich bin auch schon nach der Webseite gegangen. Dort findet sich dann ja
in etwa folgende Anleitung:
- NameVirtualHost auf * oder IP-Adresse (NameVirtualHost * will work
only in version 1.3.13 and later.)
- <VirtualHost> Block für jeden unterschiedlichen Host.
"Syntax:
Konrad Neitzel schrieb:
Hallo Liste! [...] - <VirtualHost> Block für jeden unterschiedlichen Host. "Syntax:
... </VirtualHost>"
[...]
NameVirtualHost *
Und der Apache teilt mir mit: [warn] VirtualHost domain.de:80 overlaps with VirtualHost www.domain.de:80, the first has precedence, perhaps you need a NameVirtualHost directive
Wieso machst Du <VirtualHost domain.de www.domain.de> ?
Daher kommt die Warnmeldung. Hinter beiden Domains steht die gleiche
IP-Adresse.
Apache löst nach dem auf, was bei ServerName bzw. ServerAlias steht und
nicht hinter
Hallo Liste!
Markus Kolb
Konrad Neitzel schrieb:
- <VirtualHost> Block für jeden unterschiedlichen Host. "Syntax:
... </VirtualHost>"
NameVirtualHost *
ServerName www.domain.de ServerAlias domain.de sub.domain.de DocumentRoot /www/domain/ </VirtualHost>
Und der Apache teilt mir mit: [warn] VirtualHost domain.de:80 overlaps with VirtualHost www.domain.de:80, the first has precedence, perhaps you need a NameVirtualHost directive
Wieso machst Du <VirtualHost domain.de www.domain.de> ? Weil ich dachte, dass ich dort die "virtual Hosts" angeben muss, auf die er hören soll.
Daher kommt die Warnmeldung. Hinter beiden Domains steht die gleiche IP-Adresse. Apache löst nach dem auf, was bei ServerName bzw. ServerAlias steht und nicht hinter
Es sollte laut Anleitung auch dort das gleiche stehen wie bei NameVirtualHost --> "The next step is to create a <VirtualHost> block for each different host that you would like to serve. The argument to the <VirtualHost> directive should be the __same__ as the argument to the NameVirtualHost directive (ie, an IP address, or * for all addresses)."
Vielen Dank für diese Erläuterungen. Jetzt verstehe ich das Ganze endlich einmal und weiss, wo die ganze Zeit mein Denkfehler war. Damit werde ich dann jetzt meine httpd.conf erneut umstricken - und wohl endlich auch ohne Warnmeldung zum laufen kriegen. Mit den besten Grüßen, Konrad Neitzel -- SoftMediaTec GmbH Tel: 0172 / 689 31 45 Fax: 069 / 90 50 99 53
Hallo Liste! Vielen Dank an alle, die mir geholfen haben! NameVirtualHost * Hier die IP und schon meckert er auch, wenn man in den VirtualHost dann mit * arbeitet :(. Irgendwie mag ich den Apache doch nicht ganz so sehr, wie er es vielleicht verdienen würde :-)) Ansonsten kann ich nur sagen: Ich habe wieder etwas dazu gelernt und es funktioniert einwandfrei. Mit den besten Grüßen, Konrad Neitzel -- SoftMediaTec GmbH Tel: 0172 / 689 31 45 Fax: 069 / 90 50 99 53
Hallo, Konrad Neitzel wrote:
Hallo Liste!
Markus Kolb
schrieb: Adalbert Michelic schrieb:
* On Sat, 22 Jun 2002 at 16:40 +0300, Konrad Neitzel wrote:
[...ApacheConfig-Auszüge zu virtualhosts...]
d.h. ich glaube in die
-Direktive gehört die IP-Adresse rein. Ist aber nur ein Schuß ins Blaue ... Korrekt.
Konrad Neitzel hat ein Mischmasch aus Name-based Virtual Hosts und IP-based Virtual Hosts. Leider ist keines von beiden richtig konfiguriert.
http://httpd.apache.org/docs/vhosts/index.html sollte ihm da weiterhelfen.
Danke für die Antwort und den Link. Auf der Seite war ich schon und habe dort auch schon versucht, mein Problem zu lösen, aber dazu war ich bisher nicht im Stande.
Mir scheint es, dass ich hier noch einiges durcheinander werfe. Erstmal ist ganz klar, dass ich nur eine IP habe und daher nur eine Name-based Virtual Hosts Konfiguration in Frage kommt.
Ich bin auch schon nach der Webseite gegangen. Dort findet sich dann ja in etwa folgende Anleitung: - NameVirtualHost auf * oder IP-Adresse (NameVirtualHost * will work only in version 1.3.13 and later.) - <VirtualHost> Block für jeden unterschiedlichen Host. "Syntax:
... </VirtualHost>" "Inside each <VirtualHost> block, you will need at minimum a ServerName directive to designate which host is served and a DocumentRoot directive to show where in the filesystem the content for that host lives."
ich zeige dir einfach mal, wie's bei mir funzt.
Eine IP, mehrere HOST-Namen, 2 verschiedene Ports
(http & https)
Alle Hostnamen MÜSSEN aufgelöst werden,
entweder durch /etc/hosts oder nameserver (bind).
Das ist natürlich etwas anonymisiert, meine httpd.conf
gebe ich natürlich so nicht raus :o)
----snipp----
Namevirtualhost 192.168.1.3:80
Namevirtualhost 192.168.1.3:443
Hallo! Am Sat, 22 Jun 2002 16:40:06 +0300 schrieb "Konrad Neitzel":
NameVirtualHost www.mydomain.de <Virtual Host www.mydomain.de mydomain.de> ...
Was mit der Apache natürlich mit der Warnung: [warn] NameVirtualHost www.mydomain.de:80 has no VirtualHosts
Ich mache das entweder über ipbased- oder namebased VirutalHosts.
# 7.virtueller host
NameVirtualHost 192.168.1.10
participants (6)
-
Adalbert Michelic
-
Andreas Meyer
-
Harry Rüter
-
Konrad Neitzel
-
Markus Kolb
-
Martin Mewes