VHost Zugriff regeln

suntrop

Erfahrenes Mitglied
Hi,

ich habe an anderer Stelle nachgefragt, wie ich mehrere Websites lokal (für Testzwecke) erstellen kann, genauer ich brauche für jede Website ein DocumentRoot.

VirtualHosts sind da genau das passende. Nur habe ich jetzt die (kleine) Problematik, dass ich nur noch über den eingetragenen Host eine Website aufrufen kann und nicht mehr wie früher über http://localhost/website01/. Das ist kein Beinbruch, jedoch wenn möglich, würde ich gerne beide Varianten nutzen können.
Im Moment wird mir ein 404 Not Found Fehler Nachricht vom Apache zurückgeliefert, wenn ich über localhost gehe.

Kann ich lokale Websites einmal über einen Host (wenn man das so sagt), z.B. website-müller.local und auch über http://localhost/kunde-müller/website_root/ aufrufen?

So sehen die zwei Dateien bis jetzt aus:
hosts
Code:
127.0.0.1       localhost
127.0.0.1       website-müller.local www.website-müller.local


http-vhosts.conf
Code:
NameVirtualHost *:80
<VirtualHost 127.0.0.1:80>
  ServerName website-müller.local
  ServerAlias fertiggaragen.local www.website-müller.local
  ServerAdmin sam@localhost
  DocumentRoot "c:\xampp\htdocs\kunde-müller\website_root"
</VirtualHost>
 
füg in die http-vhosts nach NameVirtualHost *:80 noch das hinzu:
Code:
<VirtualHost 127.0.0.1:80>
  ServerName localhost
  ServerAdmin sam@localhost
  DocumentRoot "c:\xampp\htdocs"
</VirtualHost>
 
Jetzt wo du es sagst klingts nur logisch auch für den Ordner einen VHost hinzuzufügen :)

Danke für die Antwort.

Grüße
suntrop
 
Zu früh gefreut. :-(

Hatte es gerade getestet. Wenn ich für localhost einen VHost hinzufüge, dann kann ich zwar wieder alle Sites über localhost/kunde/site aufrufen, aber dafür dann nicht mehr über kunde-site.local

Dann erhalte ich diesen Fehler:
Not Found

The requested URL /de/plaene.php was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

Spielt es vielleicht eine Rolle, in welcher Reihenfolge die VHost-Einträge in der Datei stehen?

So sehen meine Dateien aus:
Code:
<VirtualHost 127.0.0.1:80>
ServerName localhost
ServerAdmin sam@localhost
DocumentRoot "c:\xampp\htdocs"
</VirtualHost> 


<VirtualHost 127.0.0.1:80>
ServerName kunde.local
ServerAlias kunde.local www.kunde.local
ServerAdmin sam@localhost
DocumentRoot "c:\xampp\htdocs\kunde\website_root"
ErrorLog "c:\xampp\htdocs\kunde\website_root\errorlog.log"
</VirtualHost>

Code:
127.0.0.1       localhost
127.0.0.1       kunde.local www.kunde.local
 
Ja das spielt eine Rolle. Wenn kein Treffer in den VirtualHosts gemacht wird, dann wird der erste Eintrag als default genommen.

Probier mal folgendes:
Tausche mal alle 127.0.0.1:80 durch *:80, auch bei NameVirtualHost
Ausserdem sofern gesetzt: UseCanonicalName auf off stellen
 
Zuletzt bearbeitet:
Zurück