rowitech wrote:ich glaube, ich bin jetzt etwas weiter. Interessanterweise hat das wohl was mit der /etc/hosts zu tun, denn wenn ich auf dem Testsserver (da hab ich das nachgestellt) alle Hostnamen auf 127.0.0.1 setze, klappt es, nutze ich verschiedene IPs (127.0.0.1 für localhost usw. und die 192.168.121.133 für meine virtualhosts v w x und y), dann kommen die bekannten Fehlermeldungen.
Ja, Du mußt Dir genauestens Klarheit darüber verschaffen, wie Dein Host die Namen auflöst. Eine Linux-Kiste muß z. B.
nicht notwendigerweise der /etc/hosts Vorrang vor DNS geben. Und falls es evtl. ein Win2Kx-Server ist, dort hat der MS-TCP-Stack manchmal ganz eigene Vorstellungen davon, wie Namen aufgelöst werden (wichtig bei mehreren virtuellen IPs/multihomed-Betrieb): auf der Kiste selbst wird nämlich DNS für die Auflösung speziell des eigenen Hostnamen völlig ignoriert (hat mich auch schon einige Kopfschmerzen gekostet).
Benutze Ping, unter Linux besser dig. Und für Windows lohnt es sich, BIND-9.3 von isc.org zu holen und zumindest die mitgelieferten BIND-Tools (dig.exe, host.exe...) zu benutzen. Für eine Windows-Testkiste lohnt es sich darüberhinaus, auch den BIND-named zu installieren und die fraglichen Domains einzurichten, um sie lokal/autark per DNS bereitstellen zu können (BIND auf Win32 ist genau so problemlos wie unter *ix).
rowitech wrote:Nochwas zu den Virtualhosts:
Wenn ich in <VirtualHost
www.example.net:80> eingebe und dann <VirtualHost lara.example.net:80> für einen weiteren Virtualhost, dann verstehe ich das, auch oder gerade wenn die DNS-Einträge dazu auf die gleiche IP verweisen. Aber ich kann hier ja nicht die gleiche IP eintragen, dann habe ich ja kein Unterscheidungsmerkmal mehr. Oder übersehe ich da was?
Für mehrere Hostnamen auf identischer IP gibt es 'NameVirtualHost'. Das setzt dann zwingend HTTP-1.1-Clients voraus (es wird der "host:"-Header vom HTTP-Request ausgewertet, den es bei HTTP 1.0 nicht gibt; wie ich schon mal schrieb, kann das aber mit SSL nicht funktionieren, ansonsten ist HTTP 1.1 bei den heutigen Browsern natürlich kein Problem mehr).
Bei 'VirtualHost' kann trotzdem immer eine IP eingetragen werden (steht dort nämlich ein Hostname, löst Apache den beim Start bzw. httpd.conf-Parsen einfach auf und verwendet intern fürderhin eh' die IP-Nr - und in Deinem Fall ist die ja dann jeweils identisch). Das Unterscheidungsmerkmal ist die '
ServerName'-Direktive.
Alles klar?
Ol'man
PS: Hast Du mal, wie ich ebenfalls schon schrieb, sowohl bei 'Listen', 'NameVirtualHost', 'ServerName' als auch 'VirtualHost' die jeweils zutreffende Portnr. drangehängt? Das "entflechtet" Dein Setup am effektivsten, denn wie Du es beschreibst, kann Apache da irgendwas nicht so recht automatisch auseinanderhalten ("proceeding with undefined results"). Evtl. liegt es nämlich daran, daß Deine 'NameVirtualHosts'-Direktive (wahrscheinlich
ohne angehängtes ":80" ?!) auch den vom SSL-vHost belegten TCP-Socket mit erfaßt, und das wäre ja gerade nicht gewollt (so wie ich Dein Problem verstehe, wolltest Du doch 30 vHosts auf Port 80 und einen SSL-vHost einrichten).