it-swarm.com.de

Apache virtuelle Hosts im LAN

ich habe 3 Domains, die auf meine Linux-Box zeigen. Die virtuellen Apache2-Hosts sind so eingerichtet, dass jede Domain die entsprechende Webseite lädt, wenn Sie sie außerhalb des LAN besuchen.

mein Problem ist, die Seiten aus dem LAN anzuzeigen.

wenn ich zu den Boxen LAN IP gehe, bekomme ich den Inhalt von/var/www/html /

wie würde ich vorgehen, um die 3 anderen Domänen, die sich in/var/www/(Site-Name-hier) befinden, über das LAN anzuzeigen?

4
helmet648

Wenn Sie versuchen, mit einer IP-Adresse auf die Site zuzugreifen, während Ihre virtuelle Host-Datei so eingerichtet ist, dass ein Domänenname und keine IP-Adresse verwendet wird, wird der Standardordner (in diesem Fall /var/www/html/) geöffnet.

Fix 1. Lokale virtuelle Host-Datei

Die gebräuchlichste und einfachste Methode, um das Problem zu beheben, ist: Bearbeiten Sie Ihre Host-Datei unter Windows oder Mac. Auf diese Weise können Sie lokal auf alle Sites zugreifen, indem Sie den Domänennamen wie von außen verwenden.

Die Host-Datei würde ungefähr so ​​aussehen:

# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to Host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding Host name.
# The IP address and the Host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#
192.168.1.1 exampleA.com
192.168.1.1 exampleB.com
192.168.1.1 exampleC.com

Fix 2. Virtuelle IP-Adressen

Da Sie über 3 Sites verfügen und alle diese Sites über die interne LAN-IP besuchen möchten, stellt sich die Frage, wie Sie Apache2 mitteilen können, welche Site zurückgegeben werden soll, wenn Sie nur eine IP-Adresse haben.

Die Lösung wäre, virtuelle IP-Adressen zu verwenden und dem virtuellen Host eine virtuelle IP-Adresse zuzuweisen, anstatt * zu verwenden.

Etwas wie das:

# Site A
<VirtualHost 100.100.100.1>
    ServerName www.example-1.com
    DocumentRoot /var/www/exampleA
</VirtualHost>

# Site A
<VirtualHost 100.100.100.2>
    ServerName www.example-2.com
    DocumentRoot /var/www/exampleB
</VirtualHost>

# Site C
<VirtualHost 100.100.100.3>
    ServerName www.example-3.com
    DocumentRoot /var/www/exampleC
</VirtualHost>

Wenn Sie die oben genannten Optionen verwenden, können Sie die Sites mithilfe der virtuellen IP-Adressen besuchen.

Fix 3. Ordner zuordnen

Sie können Ordner als Alias ​​zuordnen damit, wenn jemand http://100.100.100.1/exampleA besucht, Site A erhält, oder wenn er zu /exampleB geht, Site B usw. erhält.

Etwas wie das:

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /var/www/html

    Alias /ExampleA /var/www/exampleA
    Alias /exampleB /var/www/exampleB

    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
     </Directory>
</VirtualHost>
3
Simon Hayter