Unterstützt Apache2 das virtuelle Hosting von Subdomains?

7

Momentan ist mein Apache Server so eingerichtet

%Vor%

Das Problem ist, dass alles unter /var/www von überall her zugänglich ist. Wenn ich eine Webseite /var/www/john/bio.html habe, könnte diese Webseite Skripte / Bilder von var/www/jane/

ausleihen

Ich möchte meinen Apache-Server wie folgt einrichten

%Vor%

So gehen alle Dateien für den Benutzer john im Ordner /var/www/john/ und ebenso für den Benutzer jane . Dann, mit symbolischen Links deaktiviert (standardmäßig), und Zugriff nur von /var/www/user/ downward (wieder standardmäßig), muss ich nicht um john's Webseite einschließlich Skripte / Bilder von jane's Webseite kümmern .

    
puk 07.11.2011, 23:37
quelle

1 Antwort

21

Nur mit lokalen Messungen ( /etc/hosts anstelle von DNS) habe ich festgestellt, dass dies in der Tat funktionieren kann.

Ändern Sie zunächst Ihre /etc/hosts -Datei, um eine Zuordnung der gewünschten Website-Namen zu erhalten ( www.example.com ). und Ziel-IP-Adresse (192.168.1.1). Ich habe meine lokale IP-Adresse verwendet.

%Vor%

Ihr Webbrowser überprüft Ihre /etc/hosts -Datei , bevor auf das World Wide Web zugreift.

Als nächstes gehen Sie durch alle Apache-Konfigurationsdateien ( httpd.conf , apache2.conf , ports.conf , conf.d/* ) und stellen Sie sicher, dass in genau eine Datei der Befehl NameVirtualHost *:80 ausgegeben wird ( Es muss nicht port :80 sein, aber wenn es mehr als einmal ausgegeben wird, erhalten Sie dieses Problem ) . Meins wurde in /etc/apache2/ports.conf ausgegeben, also leg deine da hin, wenn du musst. Schließlich, aktualisieren Sie Ihre Apache-Konfigurationsdatei (meine war bei /etc/apache2/sites-available/default ) wie so.

%Vor%

Als letzten Schritt müssen Sie möglicherweise die Websites zu Apache hinzufügen, indem Sie die folgenden Befehle eingeben (dieser Schritt ist nicht notwendig, wenn Sie alle Websites in sites-available/default und nicht in separate Dateien für einzelne Websites eingeben).

%Vor%

Danach wird john.example.com zu /var/www/john gehen. Dieses Verzeichnis fungiert dann als Stammverzeichnis, und john hat keinen Zugriff mehr auf www und hat daher keinen Zugriff auf /var/www/jane .

Nach diesem Vorgang wird jane.example.com ebenfalls zu /var/www/jane wechseln. Dieses Verzeichnis fungiert dann als Stammverzeichnis, und jane hat keinen Zugriff mehr auf www und hat daher keinen Zugriff auf /var/www/john .

Bei deaktivierten symbolischen Links können beide Verzeichnisse nicht aufeinander zugreifen

    
puk 08.11.2011, 02:46
quelle

Tags und Links