Wenn du deinen Pi über das Internet erreichbar machst und bspw. mehrere Domains / Webseiten auf deinem Pi ablegst, helfen die virtuelle Hosts dabei die Anfragen gezielt zu steuern. Wird bspw. die Domain www.domain1.tld aufgerufen, soll der Anwender auch nur die dafür vorgesehenen Inhalte angezeigt bekommen.
Gleiches soll passieren, wird www.domain2.tld aufgerufen.
Damit dies funktioniert, musst du dem Webserver ein paar Wegweiser aufstellen.
Gehen wir also davon aus, dass du im Pfad /var/html/www/ zwei weitere Ordner mit den Namen domain1 und domain2 liegen hast, die jeweils ihre eigenen Inhalte haben.
Damit das Routing je nach Domainaufruf funktioniert, erstellst du für jede Domain eine entsprechende Konfigurationsdatei anhand folgenden Beispiels.
sudo nano /etc/apache2/sites-available/domain1.conf
Anzeige
# www.domain1.tld <VirtualHost *:80> # für Verbindungen über https muss der Port von 80 auf 443 geändert werden. ServerAdmin deine@mail.adresse ServerName www.domain1.tld ServerAlias www.domain1.tld DocumentRoot /var/www/html/domain1 <Directory /var/www/html/domain1/> AllowOverride All </Directory> ErrorLog ${APACHE_LOG_DIR}/www.domain1_error.log CustomLog ${APACHE_LOG_DIR}/www.domain1_access.log combined </VirtualHost>
Die Datei per STRG+O speichern und per STRG+X schließen.
Die neue Konfigurationsdatei muss dem Apache-Webserver einmalig mitgeteilt werden.
sudo a2ensite domain1
Das Ganze ohne vollständigen Pfad und ohne die Dateiendung .conf. Anschließend den Webserver-Dienst neustarten.
sudo service apache2 restart
Sofern du deine Domain (bspw. www.domain1.tld) so eingerichtet hast, dass diese auf die öffentliche IP-Adresse deines Pi geroutet wird (bspw. per dynamischen DNS), lauscht der Pi nun ob die Anfrage auf www.domain1.tld kommt und zeigt den Inhalt des „DocumentRoot“ von domain1 an.
Anzeige