vhosts - virtual hosts - virtuelle Hosts wollen nicht laufen

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

vhosts - virtual hosts - virtuelle Hosts wollen nicht laufen

Postby inco » 17. June 2004 20:58

Servus Ihr,

ich weiß... ein viel diskutiertes Thema, aber anscheinend reagiert xampp hier sehr individuell???

Meine Websites unter D:\www\htdocs\ sollen für C:\xampp\apache\conf\httpd.conf als virtuelle Hosts laufen, z.B.

D:\www\htdocs\nhw\index.php


die httpd.conf enthält:
...
#LoadModule ssl_module modules/mod_ssl.so
...

NameVirtualHost 127.0.0.1:80
<VirtualHost 127.0.0.1:80>
ServerName nhw
Serveralias nhw
ServerAdmin test@localhost
DocumentRoot "D:/www/htdocs/nhw"
<Directory "D:/www/htdocs/nhw/">
DirectoryIndex index.htm index.html index.php
</Directory>
ErrorLog logs/nhw-error_log
TransferLog logs/nhw-access_log
</VirtualHost>


die C:\WINDOWS\system32\drivers\etc\hosts enthält:
127.0.0.1 localhost
127.0.0.1 nhw


Das ganze will einfach nicht funktionieren :evil: , obwohl ich es mal hinbekommen hatte. Außerdem ging seit jeher kein Aufruf eines virtuellen Hosts ohne DFÜ-Einwahl des Browsers.


Ich nutze Windows XP Pro, XAMPP 2.0.48 und keine Scripte oder Automatische Suche von Einstellungen unter LAN oder DFÜ im IE 6.0.2800 (was hier evtl. zu Fehlern führen könnte). Apache und MySQL laufen als Dienste.


Hat jemand eine Lösung für meine beiden Probleme?

Vielen Dank
Peter
inco
 
Posts: 17
Joined: 17. June 2004 20:24

Postby Apache-User » 17. June 2004 22:43

wie soll denn das auch gehn was du da machst?

du baust dir einen NameVirtualHost und setzt da eine IP ein??? wer lesen (english) kann is hier klar im vorteil

Name steht wohl dafür das dort nicht die IP angegeben wird sondern der Name also in deinem fall nhw:80

mehr sag ich jetzt mal nicht dazu de es gibt weitaus mehr wie nur einen post hier im forum mit sehr schön erklärten vhosts...

zudem gibt es für Windows auch ein addon das sich Apanatschi nennt und die Vhots erstellen kann ohne das du wissen musst wie das geht
mfg
D.A.U.™
User avatar
Apache-User
 
Posts: 594
Joined: 30. December 2002 16:50
Location: anonym

Postby Rolidor » 17. June 2004 22:55

Hi.
@Apache-User:
wie soll denn das auch gehn was du da machst?

Doch, doch. Das geht. Hab ich auch so konfiguriert (allerdings ohne ':Port'). macht auch Sinn, da so nur über localhost auf die virtuellen Hosts zugegriffen werden kann.

Gruß
Rolo
Rolidor
 
Posts: 406
Joined: 20. April 2004 10:17
Location: Dreieich - Hessen

Was ist hier wirklich mit DAU gemeint???

Postby inco » 18. June 2004 21:22

Es gibt die IP-basierten vhosts und die name-basierten, es ist meine Wahl, wie ich das mache, zu dem machen IP-basierte weniger Probleme mit SSL. Gerne lasse ich mir auch eine Variante name based erläutern, wenn alles gleichermaßen nutzt.

Aber, tschuldige DAU, das steht ja alles in den von Dir gerühmten zahlreichen vhosts-Beiträgen, die DU jedenfalls nicht gelesen oder verstanden haben kannst.

Kann mir mal jemand sagen, warum in fast jedem Forum solche bornierten Tippwütigen rumsauen????

Die Frage ist, warum o.a. NICHT läuft, OBWOHL es den Konventionen entspricht und wie man DFÜ-Verbindungen beim Aufruf von vhosts vermeidet, ohne: "Keine Verbindung wählen" in den Einstellungen, weil das müsste ich beim Arbeiten dann ständig ändern, wenn ich doch ins Intrernet will zwischendurch.

Der nächste Beitrag in diesem thread darf sich also ruhig auf meine Frage beziehen, nicht auf die eigene buchweise Unwissenheit und auch nicht auf solche Beiträge, sondern BITTÄÄÄ auf meine FRAGÄÄÄ ?????

Danke an alle Vernunftbegabten,
(wir haben mittelerweile mind. 2000 Zeichen zu viel in diesem Thread und noch kein Stück Antwort, sorry an die Moderatoren)

inco
inco
 
Posts: 17
Joined: 17. June 2004 20:24

Postby Wiedmann » 18. June 2004 21:55

Das ganze will einfach nicht funktionieren, obwohl ich es mal hinbekommen hatte.

Wie äussert sich das "nicht funktionieren"?

Außerdem ging seit jeher kein Aufruf eines virtuellen Hosts ohne DFÜ-Einwahl des Browsers.

- Was passiert wenn du in der Eingabeaufforderun "pingg nhw" eingibst?
- Wählt er sich auch ein wenn du 127.0.0.1 eingibst (wie rufst du den VHost auf)?
- Hast du einen Proxy eingetragen?
- Evtl. ist der Verursacher auch ein Internet-Beschleunigungs-Sicherheits-Tool was noch installiert ist...

Es gibt die IP-basierten vhosts und die name-basierten, es ist meine Wahl, wie ich das mache, zu dem machen IP-basierte weniger Probleme mit SSL.

BTW ist das ein namensbasierter virtueller Hosts!
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby inco » 18. June 2004 22:35

zu "nicht funktionieren":

http://nhw ergibt die Fehlerseite des IE:
"Die Seite kann nicht angezeigt werden"


http://127.0.0.1 oder http://localhost startet D:/www/htdocs/nhw/index.php ordnungsgemäß
aber ich komme nicht mehr zur Startseite von XAMPP, weder mit 127.0.0.1 noch mit localhost (ääh, logisch oder?)

ping ergibt:
Ping-Anforderung konnte Host "nhw" nicht finden. Überprüfen Sie den Namen, und versuchen Sie es erneut.

ping von localhost und 127.0.0.1 funktioniert

er wählt sich nicht ein bei 127.0.0.1 oder localhost, sondern sobald ich weitere IP bestimme für weitere Seiten, z.B. 127.0.0.2, aber warum dort und nicht bei 127.0.0.1 bzw. localhost?

Ich habe und hatte keine DFÜ-Tools installiert, lediglich die DFÜ-Firewall von XP ist aktiv.

Danke für Deinen Bezug zur Frage und zu "das ist ein namensbasierter vhost" -> ja, gottseidank behaupte ich nicht alles zu können und dass englisch lesen können klar von Vorteil sei :wink:

im Moment habe ich keine weiteren Einträge in der hosts-Datei außer

127.0.0.1 localhost

und in der httpd.conf ganz simpel:
...
<VirtualHost 127.0.0.7>
DocumentRoot "D:/www/htdocs/nhw"
</VirtualHost>
#
<VirtualHost 127.0.0.8>
DocumentRoot "D:/www/htdocs/photokino"
</VirtualHost>
...


rufe ich photokino nun mit http://127.0.0.8 auf, funktioniert das auch, allerdings immer mit dem Wunsch verbunden sich einzuwählen.
Außerdem ist diese Variante recht kryptisch, namensbasierter Aufruf wäre mir lieber um zu wissen, was ich wirklich aufrufe, z.B. falls ich mehrere sich gleichende Seiten baue.

Das sind also IP-basierte vhosts, oder?

Gruß
inco
inco
 
Posts: 17
Joined: 17. June 2004 20:24

Postby Wiedmann » 18. June 2004 23:02

also vorher hast du geschrieben:
127.0.0.1 localhost
127.0.0.1 nhw


und jetzt:
127.0.0.1 localhost


In der HOSTS muss es für jeden VHOST eine Zuordnung IP <--> ServerName geben.
(wegen der Vollständigkeit: diese Zuordnung kann auch in einem lokalen DNS-Server geschehen)

Auch scheinst du deine VHOSTS jetzt anders angelegt zu haben. Jetzt sind es IP-basierende (wenn da bei den "..." nicht noch was steht)
Code: Select all
...
<VirtualHost 127.0.0.7>
DocumentRoot "D:/www/htdocs/nhw"
</VirtualHost>
#
<VirtualHost 127.0.0.8>
DocumentRoot "D:/www/htdocs/photokino"
</VirtualHost>
...


für beide IP's auf jeden Fall einen Eintrag in der HOSTS und diese Namen jeweils als ServerName nehmen.

Wenn du Einträge die den Apache betreffen in der HOSTS änderst, mag es eine gute Idee sein den Apachen neu zu starten.

aber ich komme nicht mehr zur Startseite von XAMPP, weder mit 127.0.0.1 noch mit localhost (ääh, logisch oder?)

Ist logisch. Für die IP 127.0.0.1 (localhost) hast du jetzt ja einen VHost definiert.

Wobei.... verschiedene IP's mit 127.0.0 ist eh nicht so gut. Ordne deiner Netzwerkkarte mehrere IP's aus dem Raum 192.168.0 für deine VHosts zu und trage diese in der HOSTS ein (oder aus dem Subnetz was deine Netzwerkkarte eh schon hat).
Oder nimm halt doch namensbasierende die dann alle über 127.0.0.1 laufen.
Last edited by Wiedmann on 18. June 2004 23:11, edited 1 time in total.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Rolidor » 18. June 2004 23:11

Gude morsche.
VHosts sind im Grunde keine besonders geheimnisvolle Sache. Sollte sich alles regeln lassen. Da gibts normalerweise auch keine Wechselwirkung mit anderen Proggies. Zuerst einmal zu der automatischen Einwahl. Da musst du unter Windows mit leben. Habe ewige Zeiten ohne die Einwahlaufforderung mit dem Apachen gearbeitet. Es muss dann mit einem Patch für den IE angefangen haben. So genau weiß ich das nicht mehr. Ist auf jeden Fall ein bekanntes Verhalten. Du musst dich zumindest erst einmal einwählen, bevor du auf den Server zugreifst. Wenn der mal angesprochen wurde, geht es zumindest bei mir wieder ohne aktive Verbindung zum Internet.
Die Apache-Doku sagt: Wenn du namensbasierte virtuelle Hosts erstellst, geht der Hauptserver verloren. Du musst also auch einen vHost-Eintrag für localhost anlegen:
Code: Select all
<VirtualHost 127.0.0.1>
    ServerAdmin webmaster@localhost
    DocumentRoot Laufw:/DeinPfadZuXampp/xampp/htdocs
    ServerName localhost
</VirtualHost>

Des Weiteren ist es eigentlich nur möglich einen Virtuellen Host (name based) gezielt anzusprechen, wenn er auch einen Namen hat. Sonst weiß der Apache nähmlich nicht, aus welchem der Verzeichnisse er die Dateien mappen soll. In deinem Fall also z.B.:
Code: Select all
<VirtualHost 127.0.0.7>
DocumentRoot "D:/www/htdocs/nhw"
ServerName nhw
</VirtualHost>
#
<VirtualHost 127.0.0.8>
DocumentRoot "D:/www/htdocs/photokino"
SeverName photokino
</VirtualHost>

Die Namen der Hosts musst du dann noch in der hosts-Datei von Windows eintragen, sonst startet der IE eine DNS-Anfrage und wird die Seiten nicht finden. Die jeweiligen Seiten kannst du dann unter 'http://nhw' bzw. 'http://photokino' aufrufen(ohne Anführungszeichen).
Auf apache.org gibts inzwischen auch eine ziemlich weit ins deutsche Übersetzte Doku für den Apachen. Da ist die Konfiguration der virtuellen Hosts wirklich ausführlich beschrieben.

Gruß
Rolo
Rolidor
 
Posts: 406
Joined: 20. April 2004 10:17
Location: Dreieich - Hessen

Postby Rolidor » 18. June 2004 23:19

Hi, ich noch mal.
habe gerade gelesen, dass Wiedemann zeitgleich mit mir was dazu geschrieben hat. Sollte in seiner und in meiner Version funktionieren. habe allerdings einen kleinen Vertipper im zweiten Code-Beispiel eingebaut. Übrigens kannst du bei Angabe von 'ServerName' alles über eine IP laufen lassen.

Rolo
Rolidor
 
Posts: 406
Joined: 20. April 2004 10:17
Location: Dreieich - Hessen

Postby inco » 19. June 2004 01:15

Danke Euch beiden erst mal,

vorweg:
apanatschi hatte ich bereits probiert
abgesehen davon, dass dieses Tool immer das verzeichnis \html anhängt an mit ihm festgelegte vhost-Pfade, auch wenn gar nicht erwünscht und man so ohnehin in der apanatschi.conf nachbessern muss,
hat es mit ihm nicht funktioniert.

Ich starte jedesmal den Apache-Dienst neu, leere den IE-Cache und starte IE in einer neuen Instanz.

Zurück zum Problem:

Das Beispiel aus der "Dokumentation zum Apache HTTP Server Version 2.0" hat nicht funktioniert. Ich nutze die deutsche chm-Version.
NameVirtualHost *

<VirtualHost *>
ServerName nhw
DocumentRoot D:/www/htdocs/nhw
</VirtualHost>

<VirtualHost *>
ServerName photokino
DocumentRoot D:/www/htdocs/photokino
</VirtualHost>

auch nicht mit dieser Zeile in der hosts-Datei
127.0.0.1 localhost nhw photokino

ebenso wenig funktioniert dieses Beispiel:
NameVirtualHost 127.0.0.1:80

<VirtualHost 127.0.0.1:80>
DocumentRoot C:/xampp/htdocs
ServerName localhost
</VirtualHost>

<VirtualHost 127.0.0.1:80>
ServerName nhw
Serveralias nhw
ServerAdmin test@localhost
DocumentRoot "D:/www/htdocs/nhw"
<Directory "D:/www/htdocs/nhw/">
DirectoryIndex index.htm index.html index.php
</Directory>
ErrorLog logs/nhw-error_log
TransferLog logs/nhw-access_log
</VirtualHost>
mit diesen Zeilen in der hosts-Datei
127.0.0.1 localhost
127.0.0.1 nhw
127.0.0.1 photokino

Dadurch kann ich mit "localhost" die XAMPP-Startseite öffnen, mit "nhw" allerdings keinen vhost.

Lediglich meine Variante mit den simplen IP-Adressen 127.0.0.2... läuft.
Natürlich IP-basiert, allerdings ohne irgendeinen Zusatz in der hosts-Datei (außer 127.0.0.1 localhost)
Die Zusätze
127.0.0.7 nhw
127.0.0.8 photokino
bringen keinen Erfolg, d.h. ich kann nicht über die Namen aufrufen.

Was ist an meinen Beispielen falsch?

Gruß
inco
inco
 
Posts: 17
Joined: 17. June 2004 20:24

Postby Wiedmann » 19. June 2004 01:30

httpd.conf
Code: Select all
NameVirtualHost *:80

<VirtualHost *:80>
ServerName locahost:80
DocumentRoot "D:/www/htdocs/"
</VirtualHost>

<VirtualHost *:80>
ServerName nhw:80
DocumentRoot "D:/www/htdocs/nhw"
<Directory "D:/www/htdocs/nhw">
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>

<VirtualHost *:80>
ServerName photokino:80
DocumentRoot "D:/www/htdocs/photokino"
<Directory "D:/www/htdocs/photokino">
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>

Beim ersten VHost muß der Pfad von DocumentRoot auf das htdocs vom xampp zeigen. Ist das "D:/www/htdocs"?

HOSTS
Code: Select all
127.0.0.1 localhost
127.0.0.1 nhw
127.0.0.1 photokino



Nochmal zu verschiednen IPs, falls du die doch noch benutzen willst. Aus dem Subnetz 127.0.0.0 kannst du nur 127.0.0.1 benutzen. Andere IP's werden "zufällig" nach 127.0.0.1 aufgelöst (mach mal einen Ping nach 127.0.0.10 und schau dir die Ausgabe an). 127.0.0.1 ist nicht wirklich eine IP die an eine Netzwerkkarte gebunden ist.
Wenn du für VHosts verschiedene IP's haben willst, müssen das "reguläre" IP's sein, und diese IP's müssen an einen Netzadapter gebunden sein.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Rolidor » 19. June 2004 01:46

Morsche.
So schlägt man sich die Nächte um die Ohren, gelle? Ich hab gerade einen kleinen CSS-Fight mit dem IE...
Also, so und nicht anders steht es bei mir in der httpd.conf:
NameVirtualHost 127.0.0.1

<VirtualHost 127.0.0.1>
ServerAdmin webmaster@localhost
DocumentRoot c:/Programme/xampp/htdocs
ServerName localhost
</VirtualHost>

<VirtualHost 127.0.0.1>
ServerAdmin webmaster@test
DocumentRoot c:/Stuff/Homepage/User_Sites/test
ServerName test
</VirtualHost>

<VirtualHost 127.0.0.1>
ServerAdmin webmaster@fdesign
DocumentRoot c:/Stuff/Homepage/User_Sites/fdesign
ServerName fdesign
</VirtualHost>

<VirtualHost 127.0.0.1>
ServerAdmin webmaster@tauschring
DocumentRoot c:/Stuff/Homepage/User_Sites/tauschring
ServerName tauschring
</VirtualHost>

In der hosts steht:
127.0.0.1 localhost
127.0.0.1 test
127.0.0.1 fdesign
127.0.0.1 tauschring

Ich arbeite jetzt in diesem Moment mit genau dieser Konfiguration! Habe es eben kurz ausprobiert: Das Beispiel mit dem Asterix aus der Apache-Doku funzt ebenfalls einwandfrei. Möglicherweise hast du etwas unter 'Listen' geändert - in der httpd.conf ziemlich weit oben (etwa Zeile 120). Da sollte '80' oder '127.0.0.1:80' stehen.

Vielleicht ist es aber auch einfach besser, jetzt in die Falle zu hüpfen. Ich für meinen Teil mach das auf jeden Fall. :shock:

Gutes Nächtle
Rolo
Rolidor
 
Posts: 406
Joined: 20. April 2004 10:17
Location: Dreieich - Hessen

Postby inco » 19. June 2004 02:53

also zu früher Stunde nochmals Dank Euch beiden
habe beide Varianten ausprobiert (1:1) und es läuft nicht.

localhost dagegen läuft - bei mir unter C:/xampp/htdocs/

Mein Apache lauscht den Ports 80 und 443 in den Zeilen 120, 121.

ping 127.0.0.10 ergibt tatsächlich Antwort von 127.0.0.1, wieder was gelernt.

Warum die "IP" 127.0.0.7 allerdings zu D:/www/htdocs/nhw
führt, wenn in httpd.conf so angegeben, ist mir schleierhaft, wo es sie doch nicht gibt (?)
<VirtualHost 127.0.0.7:80>
DocumentRoot "D:/www/htdocs/nhw"
</VirtualHost>

Das läuft also offenbar tatsächlich über 127.0.0.1, ok.

Ich habe keine Ahnung, warum das mal über namen funktionierte und nun nicht mehr.

Das mit den IP-Adressen der Netzwerkkarte ist ein rotes Tuch für mich,
da ich von "Netzwerk - Server - Host - Client - Protokolle" nicht genug verstehe (ich wüsste garnicht, was ich dazu tun müsste)
und schiss habe, hier Hintertüren über TCP/IP zu öffnen (Dateifreigabe etc.). Sorry Wiedmann. :oops:

Ich geb's auf und bleibe bei den IP 127... auch wenn das nicht regelgerecht ist, diese Identifizierungsmethode läuft und ich kann die Sites auch nicht unter localhost/nhw etc. ansprechen, da sie eigene root-Verzeichnisse brauchen, denn ich arbeite nur mit absoluten Pfadangaben, also
html:
<script src="/foo.js">
php:
include_once($_SERVER["DOCUMENT_ROOT"]."/etc/loadid.php");

Trotzdem 1000 Dank an Euch.
Vielleicht finde ich ja eines schönen Tages den Fehler in den XP-Diensten... :x


Gruß
inco
inco
 
Posts: 17
Joined: 17. June 2004 20:24

Postby Wiedmann » 19. June 2004 03:04

Trotzdem nochmal zwei Fragen *g*:

(1)
Wenn die "HOSTS" so aussieht:
127.0.0.1 localhost
127.0.0.1 nhw
127.0.0.1 photokino

was passiert jeweils bei:
ping localhost
ping nhw
ping photokino

(2)
Wird die apanatschi.conf noch in der httpd.conf geladen?

PS:
Nach deiner Aussage von gerade, muß es dann im ersten VHost
anstatt: DocumentRoot "C:/www/htdocs"
dieses sein: DocumentRoot "C:/xampp/htdocs"
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby inco » 19. June 2004 03:13

zu (1)

localhost bekommt Antwort von 127.0.0.1

nhw und photokino werden nicht gefunden

zu (2)

ja, über den include-Befehl WURDE sie geladen (nun nicht mehr)
ich binde dagegen selbst meine vhosts über
Include D:/www/vhosts.conf
ein

zu (PS)

tut es auch ... :wink:
Last edited by inco on 19. June 2004 03:18, edited 1 time in total.
inco
 
Posts: 17
Joined: 17. June 2004 20:24

Next

Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 38 guests