You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users-de@httpd.apache.org by Stefan Hofmeir <St...@Hofmeir.de> on 2003/08/21 01:20:30 UTC

virtualhost namebased und IP-based kombiniert

Hallo,

gibt es unter Apache (1 bzw. 2) die Möglichkeit, <virtualhost>
namebased und IP-based so kombinieren:

Beispiel:
Server hat 2 IP-Adressen

a) Bei Eingabe der IP-Adresse A (statt Domainname) soll User auf
Domain A gelangen

a) Bei Eingabe der IP-Adresse B (statt Domainname) soll User auf
Domain B gelangen

c) zusätzlich sollen mehrere namebased virtualhosts auf dem Server
laufen.


Wenn ich für a) und b) IP-based virtualhost sowie für c) mehrere
namebased virtualhost einrichte, ergibt sich folgendes Problem:

Die IP-based virtualhosts haben Vorrang, die namedbased
virtualhosts-Definitionen werden nicht ausgeführt (stattdessen die
IP-based Definitionen)



Kann man denn virtualhost namebased und IP-based innerhalb einem
Apache-System überhaupt kombinieren????


-- 
Herzliche Grüße
Stefan



--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: virtualhost namebased und IP-based kombiniert

Posted by Olix <li...@gmx.net>.
Hallo an die Leser der Liste, hallo Stefan,

es geht! Man kann mehrere IP-basierte virtuelle Server und auch 
namenbasierte virtuelle Server (bei mir z. Z nur einer)  betreiben.

Wichtig sind die Einstellungen im DNS. Werde mal die Konfiguration erläutern.

1.) IP-Adressen der Karte zuweisen (ifconfig ...)
Server-IP (Apache, DNS, u.a.): 192.168.0.3 und 192.168.0.4
Client-IP:                                   192.168.0.1

2.) DNS-Konfigurieren
Es wird ein weiterer Alias mit "php" für den DNS eingetragen, welche auf     
192.168.0.3 (host: erbse) zeigt. 
Über die Adresse php.local oder nur php wird dann auf den namenbasierten 
virtuellen Server zugegriffen.

Ziel ist es:
- mit der Adresse 192.168.0.3 die eigene Web-Site aufzurufen
- mit der Adresse 192.168.0.4 die Web-Site vom "Polizeisportverein - PSV"  
aufzurufen
- mit  der Adresse  "php" die Web-Site für "PHP"  aufzurufen


#DNS-Konfiguration   in    local.zone
#-----------------------------------------------------------------------------------
$TTL 2D
@               IN SOA  local.  root.localhost. (
                                47              ; serial
                                1D              ; refresh
                                1H              ; retry
                                1W              ; expiry
                                2D )            ; minimum

                IN NS           @
                IN HINFO        "VIA EPIA  533" "Linux 2.4.x"

kuerbis         IN A            192.168.0.1
bohne           IN A            192.168.0.2

erbse           IN A            192.168.0.3
psv              IN A            192.168.0.4

php             IN CNAME        erbse
#-----------------------------------------------------------------------------------

3.) Die Konf. in httpd.conf

# Adressen für IP-basierte virtuelle Hosts
Listen 192.168.0.3:80
Listen 192.168.0.4:80

# IP-basierter virtueller Host: erbse.local  für die eigene Web-Site
# Aufruf mit Adresse: 192.168.0.3
<VirtualHost 192.168.0.3>
    ServerName erbse.local
    ServerAlias erbse
    ServerAdmin root@erbse.local
    DocumentRoot /srv/www/public_html/www.naundorf-xyz.de
    ErrorLog /var/log/apache2/www.naundorf-xyz.de-error_log
    CustomLog /var/log/apache2/www.naundorf-xyz.de-access_log common
</VirtualHost>

# IP-basierter virtueller Host: erbse.local  für die Web-Site vom 
"Polizeisportverein - PSV" 
# Aufruf mit Adresse: 192.168.0.4
<VirtualHost 192.168.0.4>
    ServerName psv.local
    ServerAlias psv
    ServerAdmin root@erbse.local
    DocumentRoot /srv/www/public_html/www.psv.de
    ErrorLog /var/log/apache2/www.psv.de-error_log
    CustomLog /var/log/apache2/www.psv.de-access_log common
</VirtualHost>

# namenbasierter virtueller Host für die PHP-Site
# Aufruf mit Adresse: php
<VirtualHost 192.168.0.3>
    ServerName php.local
    ServerAlias php
    ServerAdmin root@erbse.local
    DocumentRoot /srv/www/public_html/php-test
    ErrorLog /var/log/apache2/www.php.de-error_log
    CustomLog /var/log/apache2/www.php.de-access_log common
</VirtualHost>

# Beachte die unterschiedlichen Log-Dateien.

4.) Das war alles. Apache, DNS und  "nscd" mit "reload" aufrufen und fertig.
Hiermit ergibt sich folgendes Erbebnis: 
1. mit der Adresse 192.168.0.3 wird meine eigene Web-Site angezeigt
2. mit der Adresse 192.168.0.4 wird die Web-Site vom "Polizeisportverein - 
PSV" angezeigt
3. mit  der Adresse  "php" wird die Web-Site für "PHP" angezeigt.


###########################################
Die Empfehlung zur Literatur für Apache 2: 

"Apache Webserver 2"
Sebastian Wolfgarten
Addison-Wesley-Verlag
ISBN 3-8273-2039-9;

Nur 40 Euro die es Wert sind. Es gibt sonst kaum Infos im Netz.
###########################################

Grüße von Olaf

-- 
Olaf Naundorf
Heilbronner Str. 3
04209 Leipzig
Phone:  +49 (0) 177 24 34 019
Voice:   +49 (0 69) 7 91 20 91 41
Telefax: +49 (0 69) 7 91 20 91 41
eMail:    linux.naundorf@gmx.net

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------