Apache - Virtueller Host - DNS

saegeblatt

kennt sich schon aus
hallo zusammen !

ich möchte mir beim apche einen virtuelen host einrichten und habe in der HTTP.CONF folgende zeilen eingefügt :

NameVirtualHost 192.168.1.100

<VirtualHost 192.168.1.100>
ServerAdmin saegeblatt@wiba-forum.de
DocumentRoot "C:/Programme/Apache Group/Apache2/htdocs1"
ServerName privat
</VirtualHost>

aber irgendwie tut das nicht . kann mir jemand sagen was ich da falsch gemacht habe ?? oder muss ich noch irgendwo was einfügen??
wie stelle ich die DNS ein ??

meine ip adreese lokal: 192.168.1.100
OS -> winXP

danke für die hilfe
 
Moin,

Du müsstest Dir eine dynamische Adresse anlegen, die wird dann der Name und Servername im Vhost.
Über die IP Adresse wird das nicht gehen da mit Deiner IP immer localhost angesprochen wird.
 
Hat vielleicht jemand von Euch eine funktionierende Appache-Konfiguration mit mehreren virtuellen Hosts (die ihr auch selbst getestet habt)?
Dann könnte der jenige die notwendige Abschnitte hier posten.
Ich habe seiner Zeit bisschen damit experimentiert, hatte aber probleme mit CGI/Perl Programmen.
 
Ich habe mein Problem (Bitte?) inzwischen gelöst.

In der Datei c:\windows\system32\drivers\etc\hosts müssen die Virtuellen Hosts eingetragen werden z.B:
Code:
127.0.0.1   localhost
127.0.0.1   [url]www.adresse-1.de[/url]
127.0.0.1   [url]www.adresse-2.de[/url]


dann kommen die Einträge in der httpd.conf die dann so aussehen sollten:
Code:
NameVirtualHost 127.0.0.1

<VirtualHost 127.0.0.1>
ServerName localhost
DocumentRoot "J:/WebServer/xampp/htdocs"
</VirtualHost>


<VirtualHost 127.0.0.1>
ServerName [url]www.adresse-1.de[/url]
DocumentRoot "J:/htdocs/users/adresse-1"
ScriptAlias /cgi-bin/ "J:/htdocs/users/adresse-1/cgi-bin/"
</VirtualHost>
<Directory "J:/htdocs/users/adresse-1/cgi-bin">
    AllowOverride None
    Options Includes ExecCGI
        AddHandler server-parsed .shtml
        AddHandler cgi-script .cgi .pl
    Order allow,deny
    Allow from all
</Directory>

<VirtualHost 127.0.0.1>
ServerName [url]www.adresse-2.de[/url]
DocumentRoot "J:/htdocs/users/adresse-2"
</VirtualHost>

Jetzt funktionieren bei mir mehrere virtuelle Hosts mit ihren CGI/pl-Programmen sowie PHP, MySql usw.
 
Moin,

so jetzt ich mich auch mal dran gegeben den Server von aussen erreichbar zu machen aber cgi klappt bei mir auch nicht, allerdings hab ich da wohl lokal schon ein Problem. Wenn ich lokal ein Passwortscript ausführe läuft es, gebe ich aber User/Pass an kommt die Eingabe aber die Daten werden anscheinend nicht übernommen da ich mich nicht mit den Daten einloggen kann.
Muss irgend etwas spezielles für htaccess beachtet werden?

Zum cgi für extern, hab einiges ausprobiert aber entweder kommt Forbidden oder Internal Server Error, hier mal der Auszug des Vhosts:

Code:
NameVirtualHost 192.168.1.2 

<VirtualHost 192.168.1.2> 
DocumentRoot "E:/Webserver/www/public" 
ServerName tequilla69.dyndns.org 
ServerAdmin [email]admin@bla.de[/email] 
DirectoryIndex index.htm index.html index.php index.php3 index.php4
ScriptAlias /cgi-bin/ E:/Projekte/Webserver/www/public/cgi-bin/
</VirtualHost>
<Directory "E:/Webserver/www/public/cgi-bin"> 
AllowOverride None 
Options ExecCGI 
AddHandler cgi-script .cgi .pl 
Order allow,deny 
Allow from all 
</Directory>

Hoffe da kann jemand weiter helfen
 
Im Moment habe ich wenig Zeit, schau aber in deine Log-Dateien die in Appache-Log-Ordner sind (access.log und error.log). Versuchmal aus diesen Informationen den Grund deiner Probleme zu finden.
Und eine Frage: wie sieht deine hosts-Datei aus?
 
Moin,

Inhalt der hosts:

127.0.0.1 localhost
192.168.1.2 tequilla69.dyndns.org


Die Logs hab ich mir angeschaut, sind aber für mich nicht aufschlussreicher, hier mal relevante Auszüge:

access.log:

192.168.1.2 - - [08/Jan/2004:01:07:25 +0100] "GET /favicon.ico HTTP/1.1" 403 299
192.168.1.2 - - [08/Jan/2004:01:12:12 +0100] "GET /cgi-bin/admin.cgi HTTP/1.1" 500 614
80.144.165.42 - - [08/Jan/2004:01:13:26 +0100] "GET /cgi-bin/admin.cgi HTTP/1.1" 500 614
192.168.1.2 - - [08/Jan/2004:01:14:12 +0100] "GET /cgi-bin/admin.cgi HTTP/1.1" 403 305
80.144.165.42 - - [08/Jan/2004:01:14:29 +0100] "GET /cgi-bin/admin.cgi HTTP/1.1" 403 305
192.168.1.2 - - [08/Jan/2004:01:15:09 +0100] "GET /cgi-bin/admin.cgi HTTP/1.1" 500 614

Das sind die Fehlermeldungen die kommen wenn extern ein CGI aufgerufen wird.


error.log:

[Thu Jan 08 01:03:52 2004] [error] [client 127.0.0.1] user Admin not found: /cgi-bin/admin.cgi
[Thu Jan 08 01:04:33 2004] [error] [client 127.0.0.1] user Admin not found: /cgi-bin/admin.cgi
[Thu Jan 08 01:04:37 2004] [error] [client 127.0.0.1] user Admin not found: /cgi-bin/admin.cgi

Lokaler Zugriff nach Erstellen des Users wenn die .htaccess Dateien erstellt worden sind.


Hier wird nur angezeigt, dass User Admin nicht gefunden werden kann, den habe ich aber vorher angelegt, genau das ist ja das Problem. Ich muss dazu sagen, dass ich alles manuell aufgesetzt habe, evtl. hab ich ja eine Config übersehen. Wie gesagt, Server und Vhost sind korrekt zu erreichen, der Vhost auch über die Domain lokal.

Hier noch der Inhalt der .htaccess:

AuthName "Shopadmin"
AuthType Basic
AuthUserFile E:\Projekte\Webserver\www\shop\shop\Admin/.htpasswd
AuthGroupFile /dev/null
require valid-user


Der User Admin steht in der .htpassword drin. Noch eine kleine Info dazu, ich habe von diesem htaccess-Kram keinen blassen Dunst....
 
Bei deiner CGI-Konfiguration fehlen der Zeile 9 die " " Zeichen und bei deinem Access-Problem kann ich dir im Moment nicht weiter helfen (das müsste ich zuerst selbst testen).
 
Noch was!

Hast Du als erste Zeile in der CGI-Datei dein Pfad zu perl.exe eingetragen?

Es muss etwa so aussehen (Pfad anpassen!!!):
Code:
#!E:\WebServer\perl\bin\perl.exe
 
Oben