IE und Probs mit virtuellen Hosts (lokaler Apache/Win2000)
Joachim
- webserver
hi,
habts Ihr ein paar Tipps vorm Schlafengehn?
Bei mir läuft unter Win 2000 ein Apache. In der Httpd.conf sind die virtuellen Hosts eingetragen:
Port 80
NameVirtualHost 127.0.0.1
<VirtualHost 127.0.0.1>
ServerName sarek
DocumentRoot "D:/home/sarek"
</VirtualHost>
in der host-Datei (WINNT\system32\drivers\etc\hosts) ist folgendes eingetragen:
127.0.0.1 localhost sarek
Mozilla hat keine Probleme, öffnet klaglos das gewünschte Verzeichnis. IE dagegen will immer eine Verbindung herstellen, lediglich bei Eingabe von "localhost" findet er das DocumentRoot. Wenn ich eine TDSL-Verbindung herstelle findet er das lokale Verzeichnis. Hmm. Was habe ich vergessen?
Gruesse Joachim
127.0.0.1 sarek
Versuchs mal so...
hallo,
Port 80
NameVirtualHost 127.0.0.1
die IP 127.0.0.1 ist grundsätzlich für "localhost" vorgesehen, unabhängig davon, ob man einen lokalen Webserver installiert hat oder nicht. Sie ist ziemlich ungeeignet, um über sie virtuelle Hosts einzurichten. Nimm lieber als IP eine 192.168.0.xxx oder eine 10.0.0.xxx, dann klappt das auch.
in der host-Datei (WINNT\system32\drivers\etc\hosts) ist folgendes eingetragen:
127.0.0.1 localhost sarek
unter Windows ist die "host"-Datei relativ unwichtig. Alles, was diese Datei eventuell kann, besteht darin, für dein lokales Netzwerk Rechnernamen in lokale IP's aufzulösen. Und "localhost zarek" würde von keinem anderen Rechner im LAN auf genau diesen host-Rechner verweisen, sondern grundsätzlich auf sich selbst, weil die IP 127.0.0.1 die loopback-Adresse ist. Deine "host"-Datei sollte so aussehen:
127.0.0.1 localhost
192.168.0.1 sarek
Mozilla hat keine Probleme, öffnet klaglos das gewünschte Verzeichnis.
Sehr eigenartig. Gerade mozilla/Netscape ist da genauer als der IE und verlangt normalerweise, daß die IP, über die deine virtuellen Hosts angesprochen werden sollen, als "Proxy" eingestellt wird - unabhängig davon, ob dein Rechner grade online ist oder nicht. Dem IE ist das egal.
Anders sieht das aus, wenn du als "port" nicht die 80 nimmst, sonderen irgendeinen freien port über 1024.
Christoph S.
hi Christoph,
die IP 127.0.0.1 ist grundsätzlich für "localhost" vorgesehen, unabhängig davon, ob man einen lokalen Webserver installiert hat oder nicht. Sie ist ziemlich ungeeignet, um über sie virtuelle Hosts einzurichten. Nimm lieber als IP eine 192.168.0.xxx oder eine 10.0.0.xxx, dann klappt das auch.
Aha. Ich bin leider Server-Dau und nutze Apache nur zum (Php) entwickeln, daher Neuland für mich.
unter Windows ist die "host"-Datei relativ unwichtig.
hmm, aber ohne die wird bei mir nix gefunden.
Alles, was diese Datei eventuell kann, besteht darin, für dein lokales Netzwerk Rechnernamen in lokale IP's aufzulösen. Und "localhost zarek" würde von keinem anderen Rechner im LAN auf genau diesen host-Rechner verweisen,
nun ja, es handelt sich eh um einen Einzelrechner (Laptop). Die Netzwerkkarte schiebe ich nur rein, wenn ich TDSL brauche.
Gerade mozilla/Netscape ist da genauer als der IE und verlangt normalerweise, daß die IP, über die deine virtuellen Hosts angesprochen werden sollen, als "Proxy" eingestellt wird - unabhängig davon, ob dein Rechner grade online ist oder nicht.
Ich werde das auf jeden Fall mit der 192er IP testen, komme nur leider erst spaeter dazu. Moeglicherweise stammen die Probs auch daher, dass ich einen vorkonfigurierten Apache nutze. Nachdem auf meinem Arbeitsrechener aber bereits ein Apache nach _Deinen_ Installationsangaben laeuft, werde ich ihn ebenso auch auf dem Laptop installieren, vermutlich passts dann. Jetzt erst mal Danke nach Berlin...
Gruesse Joachim
Hi Joachim,
Aha. Ich bin leider Server-Dau und nutze Apache
nur zum (Php) entwickeln, daher Neuland für mich.
wofür brauchst Du dann einen Virtual Host?
Reicht
http://127.0.0.1/dein/pfad/zum/php/script.php
nicht aus?
Du wirst doch keine Hostnamen in Deine Anwendungen
fest eingebrannt haben ... ?
Viele Grüße
Michael
hallo Michael,
wofür brauchst Du dann einen Virtual Host?
Das muß ich mich bei dieser Voraussetzung auch fragen. Aber vielleicht will Joachim die Adresse, auf die seine Scripts hochgeladen werden sollen, simulieren - und dann braucht er tatsächlich ein vHost.
Reicht
http://127.0.0.1/dein/pfad/zum/php/script.php
nicht aus?
Ich würde grundsätzlich davon abraten, die loopback-Adresse für irgendwelche Probe-Spielchen mit dem Webserver (egal ob Apache oder sonst einer) - ich glaube, Xitami macht das ohnehin nicht mit) zu nutzen.
Und jetzt mach ich nen Glaubenskrieg auf: du warst doch derjenige, der sich bei der Erörterung der shebang in Zusammenhang mit "ScriptInterpreterSource registry" vehement für die shebang eingesetzt hat, mit der Begründung, daß man die Fähigkeit, den Wert der shebang zu würdigen, verlieren könnte - und ich behaupte jetzt mal, wer hier auf die loopback-Adresse ausweicht, wird nie das Konzept von Class-A-, Class-B- und Class-C-Netzen begreifen, abgesehen vom Unterschied zwischen IPV4 und IPV6
Wochenend-Grüße aus Berlin
Christoph S.
Hi Christoph,
Reicht
http://127.0.0.1/dein/pfad/zum/php/script.php
nicht aus?
Ich würde grundsätzlich davon abraten, die
loopback-Adresse für irgendwelche Probe-Spielchen
mit dem Webserver (egal ob Apache oder sonst einer)
- ich glaube, Xitami macht das ohnehin nicht mit)
zu nutzen.
will ich doch gar nicht.
Ich halte schon die Definition des Virtual Hosts für
Overkill.
Der Server ist über "localhost" oder "127.0.0.1"
ansprechbar - und falls die zu testenden PHP-Seiten
keine fest eingebrannten Hostnamen enthalten, muß das
reichen, eine produktive Umgebung nachzuspielen.
Tun sie es aber doch, dann gehört der PHP-Code so
geschrieben, daß dieser Hostname nur an einer einzigen
Stelle im Code steht und zum Testen leicht auf
"localhost" geändert werden kann.
Und jetzt mach ich nen Glaubenskrieg auf: du warst
doch derjenige, der sich bei der Erörterung der
shebang in Zusammenhang mit "ScriptInterpreterSource
registry" vehement für die shebang eingesetzt hat,
mit der Begründung, daß man die Fähigkeit, den Wert
der shebang zu würdigen, verlieren könnte - und
ich behaupte jetzt mal, wer hier auf die loopback-
Adresse ausweicht, wird nie das Konzept von Class-
A-, Class-B- und Class-C-Netzen begreifen, abgesehen
vom Unterschied zwischen IPV4 und IPV6
Das PHP-Skript gehört so geschrieben, daß es nicht
von einem DNS-Namen abhängt.
Und unter dieser Voraussetzung halte ich "localhost"
für eine taugliche Testumgebung.
Viele Grüße
Michael
(der selbst auch mit "localhost" testet, aber seinen
Perl-Interpreter unter Windows98 nach c:\usr\local
installiert hat)
hallo Michael,
Ich halte schon die Definition des Virtual Hosts für
Overkill.
ähm, ja - bei dir muß man ja immer auf überraschende Aussagen gefaßt sein. Meinst du das jetzt generell oder meinst du die Art, wie im Eröffnungsposting ein virtueller host beschrieben wurde?
Tun sie es aber doch, dann
du wolltest schreiben: "tun sie es aber doch nicht, dann" gelle?
gehört der PHP-Code so
geschrieben, daß dieser Hostname nur an einer einzigen
Stelle im Code steht und zum Testen leicht auf
"localhost" geändert werden kann.
prinzipiell stimmen wir da vollkommen überein. Nur sehe ich eigentlich nicht, wo in einem PHP-Script überhaupt ein Hostname stehen muß
Das PHP-Skript gehört so geschrieben, daß es nicht
von einem DNS-Namen abhängt.
Und unter dieser Voraussetzung halte ich "localhost"
für eine taugliche Testumgebung.
richtig, aber eben nur "unter dieser Voraussetzung"
Grüße aus Berlin
Christoph S.