Apache - Virtual Host - zum lokalen Testen mehrerer Sites
Clemens
- webserver
Hallo Leute!
Ich hatte bisher zum lokalen Testen von Web-Sites einen Apache (V. 1.3.20) unter Win98 laufen, der über http://localhost/ angesprochen werden kann.
Nun würde ich gerne verschiedene Projekte mit unterschiedlichen Domains ansprechen können, z.B.
http://localhost/ und
http://localhost2/
damit auch relative Angaben (z.B. <a href="/">) richtig aufgelöst werden.
dafür habe ich nun in der httpd.conf einen virtual Host folgendermaßen eingerichtet:
NameVirtualHost *
<VirtualHost *>
ServerAdmin you@your.address
DocumentRoot "D:/Website-Upload"
ServerName localhost2
ErrorLog logs/localhost2-error_log
CustomLog logs/localhost2-access_log common
</VirtualHost>
was den Apache aber nicht beeindruckt hat. Bei http://localhost/ wurde nun die index-Datei von "D:/Website-Upload", also die eigentlich zu localhost2 gehörende, angezeigt. Dann habe ich den ursprünglichen Host nochmals als virtuellen eingetragen:
<VirtualHost *>
ServerAdmin you@your.address
DocumentRoot "D:/Website"
ServerName localhost
ErrorLog logs/localhost-error_log
CustomLog logs/localhost-access_log common
</VirtualHost>
<VirtualHost *>
ServerAdmin you@your.address
DocumentRoot "D:/Website-Upload"
ServerName localhost2
ErrorLog logs/localhost2-error_log
CustomLog logs/localhost2-access_log common
</VirtualHost>
Das hat auch nichts gebracht. Ich verstehe auch nicht so genau wie das gehen soll, zwei Domains mit einer IP, vermutlich geht es ja auch nicht, da in der Doku steht: "the web server must have a different IP address for each virtual host".
Aber wie mache ich das auf einem Win-System zwei IP-Adressen einrichten?
Kann jemand helfen?! Danke!
Clemens
Hallo Clemens,
Aber wie mache ich das auf einem Win-System zwei IP-Adressen
einrichten?
Du brauchst keine zwei IP-Adressen, eine reicht. Du musst deinem
Rechner nur mitteilen das er jetzt zwei Namen hat.
Zuerst les mal den Feature-Artikel "Mehrere virtuelle Hosts mit
OmniHTTPd" http://aktuell.de.selfhtml.org/artikel/server/v-hosts/index.htm Dann oeffne die Datei hosts im Windows-Verzeichnis
und fuege die Angaben die du brauchst hinzu. z.B.:
127.0.0.1 uss-enterprise bridge.uss-enterprise wrap.uss-enterprise sickbay.uss-enterprise
213.139.94.131 teamone.de selfhtml.teamone.de selfaktuall.teamone.de forum.de.selfhtml.org
Nun Zum Indianer:
ServerName uss-enterprise
<VirtualHost 127.0.0.1>
ServerAdmin you@your.address
DocumentRoot "/pfad/interesiert/keinen/im/www/"
ServerName bridge.uss-enterprise
ErrorLog logs/bridge/error_log
CustomLog logs/bridge/access_log common
</VirtualHost>
gruesse
jens mueller
Hi Jens!
Danke für die Tipps! Mit der Änderung der Hosts-Datei und folgendem Eintrag beim Apache geht es jetzt:
NameVirtualHost *
<VirtualHost *>
ServerAdmin you@your.address
DocumentRoot "D:/Website"
ServerName localhost
ErrorLog logs/localhost-error_log
CustomLog logs/localhost-access_log common
</VirtualHost>
<VirtualHost *>
ServerAdmin you@your.address
DocumentRoot "D:/Website-Upload"
ServerName localhost2
ErrorLog logs/localhost2-error_log
CustomLog logs/localhost2-access_log common
</VirtualHost>
Nur noch eine Frage zum Verständnis: Wie hängen die Angaben bei
NameVirtualHost [Angabe hier] (Du has "ServerName" geschrieben, ist das etwas anderes oder nur eine Verwechslung)
<VirtualHost [Angabe hier]>
ServerName [Angabe hier]
zusammen?
Clemens
ServerName uss-enterprise
<VirtualHost 127.0.0.1>
ServerAdmin you@your.address
DocumentRoot "/pfad/interesiert/keinen/im/www/"
ServerName bridge.uss-enterprise
ErrorLog logs/bridge/error_log
CustomLog logs/bridge/access_log common
</VirtualHost>
hallo,
Nur noch eine Frage zum Verständnis: Wie hängen die Angaben bei
NameVirtualHost [Angabe hier] (Du has "ServerName" geschrieben, ist das etwas anderes oder nur eine Verwechslung)
<VirtualHost [Angabe hier]>
ServerName [Angabe hier]
zusammen?
da du ja schon auf die
Feature-Artikel hingewiesen worden bist, hier noch ein link: http://aktuell.de.selfhtml.org/artikel/server/apacheconf/apconf05.htm#a4
Christoph S.
Hallo Clemens,
Nur noch eine Frage zum Verständnis: Wie hängen die Angaben bei
NameVirtualHost [Angabe hier] (Du has "ServerName" geschrieben, ist das etwas anderes oder nur eine Verwechslung)
<VirtualHost [Angabe hier]>
ServerName [Angabe hier]
zusammen?
Hab ich nur verwendet um dir das Beispiel klarer machen. Damit du einen Bezug zwichen dem V-Host und dem Server herstellen zu kannst.
Im Prinzip besteht kein Unterschied zwischen den Beiden Angaben, im
V-Host Container und dem "Normalen-Server". (Es gibst sogar Server
auf denen laufen nur V-Hosts)
ServerName in einem Virtual-Host ueberschreibt die Vorherigen
Angaben, nur fuer den V-Host, und Apache dann unterscheiden welcher
der Server die Anfrage entgegen nimmt.
The directives Port, ServerName, ServerPath, and ServerAlias can
appear anywhere within the definition of a server. However, each
appearance overrides the previous appearance (within that server).
http://httpd.apache.org/docs/vhosts/details.html
live long and prosper
jens mueller \//_