Dieses Tutorial führt Sie durch das Einrichten mehrerer Domänen und Websites mit virtuellen Apache-Hosts auf einem Ubuntu 18.04-Server. Bei diesem Prozess lernen Sie, wie Sie je nach Art der angeforderten Domäne verschiedenen Benutzern unterschiedlichen Inhalt bereitstellen können.
Eine ausführlichere Version dieses Tutorials mit besseren Erklärungen zu den einzelnen Schritten finden Sie unter So installieren Sie Apache Virtual Hosts unter Ubuntu 18.04.
Um diesem Tutorial zu folgen, benötigen Sie Zugriff auf Folgendes auf einem Ubuntu-18.04-Server:
sudo apt install apache2
installieren könnenZunächst erstellen wir eine Verzeichnisstruktur, in der die Site-Daten gespeichert werden, die wir den Besuchern in unserem Top-Level-Apache-Verzeichnis bereitstellen können. Wir verwenden Beispiele von Domänennamen, die nachstehend hervorgehoben sind. Sie müssen diese durch Ihre tatsächlichen Domänennamen ersetzen.
- sudo mkdir -p /var/www/example.com/public_html
- sudo mkdir -p /var/www/test.com/public_html
Jetzt müssen wir die Berechtigungen auf unseren aktuellen Benutzer ohne Rootberechtigung ändern, um diese Dateien ändern zu können.
- sudo chown -R $USER:$USER /var/www/example.com/public_html
- sudo chown -R $USER:$USER /var/www/test.com/public_html
Außerdem stellen wir sicher, dass der schreibgeschützte Zugriff auf das allgemeine Webverzeichnis und alle darin enthaltenen Dateien und Ordner gestattet ist, damit Seiten richtig bereitgestellt werden können.
- sudo chmod -R 755 /var/www
Erstellen wir jetzt Inhalt, den wir bereitstellen können. Dazu erstellen wir eine index.html
-Demo-Seite für jede Site. Wir können eine index.html
-Datei in einem Textbearbeitungsprogramm für unsere erste Site öffnen, beispielsweise nano.
- nano /var/www/example.com/public_html/index.html
In dieser Datei erstellen wir dann ein domänenspezifisches HTML-Dokument wie das folgende:
<html>
<head>
<title>Welcome to Example.com!</title>
</head>
<body>
<h1>Success! The example.com virtual host is working!</h1>
</body>
</html>
Speichern und schließen Sie die Datei und kopieren Sie dann diese Datei als Grundlage für unsere zweite Site:
- cp /var/www/example.com/public_html/index.html /var/www/test.com/public_html/index.html
Öffnen Sie die Datei und ändern Sie die relevanten Informationen:
- nano /var/www/test.com/public_html/index.html
<html>
<head>
<title>Welcome to Test.com!</title>
</head>
<body> <h1>Success! The test.com virtual host is working!</h1>
</body>
</html>
Speichern und schließen Sie auch diese Datei.
Apache wird mit einer virtuellen Standard-Host-Datei namens 000-default.conf
geliefert, die wir als Vorlage verwenden. Wir kopieren sie, um eine virtuelle Host-Datei für jede unserer Domänen zu erstellen.
Kopieren Sie als Erstes die Datei für die erste Domäne:
- sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf
Öffnen Sie die neue Datei in Ihrem Textbearbeitungsprogramm (wir verwenden nano) mit Rootberechtigungen:
- sudo nano /etc/apache2/sites-available/example.com.conf
Wir werden diese Datei für unsere eigene Domäne anpassen. Ändern Sie den nachstehend hervorgehobenen Text je nach Bedarf.
<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Speichern und schließen Sie dann die Datei.
Jetzt haben wir unsere erste virtuelle Host-Datei eingerichtet und können dann unsere zweite Datei erstellen, indem wir diese Datei kopieren und je nach Bedarf anpassen.
Kopieren Sie zu diesem Zweck die Datei:
- sudo cp /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-available/test.com.conf
Öffnen Sie die neue Datei mit Rootberechtigungen in Ihrem Textbearbeitungsprogramm:
- sudo nano /etc/apache2/sites-available/test.com.conf
Jetzt müssen Sie alle Informationen so ändern, dass sie auf Ihre zweite Domäne verweisen. Die endgültige Datei sollte in etwa wie folgt aussehen, wobei der hervorgehobene Text Ihren eigenen Domäneninformationen entsprechen sollte.
<VirtualHost *:80>
ServerAdmin admin@test.com
ServerName test.com
ServerAlias www.test.com
DocumentRoot /var/www/test.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Wenn Sie fertig sind, speichern und schließen Sie die Datei.
Nach Erstellung unserer virtuellen Host-Dateien müssen diese aktiviert werden. Dazu verwenden wir das a2ensite
-Tool.
- sudo a2ensite example.com.conf
- sudo a2ensite test.com.conf
Deaktivieren Sie als Nächstes die unter 000-default.conf
definierte Standard-Site:
- sudo a2dissite 000-default.conf
Wenn Sie fertig sind, müssen Sie Apache neu starten, damit diese Änderungen wirksam werden, und systemctl status
verwenden, um den Erfolg des Neustarts zu verifizieren.
- sudo systemctl restart apache2
Ihr Server sollte jetzt für zwei Websites eingerichtet sein.
Wenn Sie keine tatsächlichen Domänen verwenden, die ihnen gehören, um dieses Verfahren zu testen, und stattdessen Beispielsdomänen benutzen, können Sie Ihre Arbeit testen, indem Sie die hosts
-Datei auf Ihrem lokalen Computer kurzzeitig ändern.
Geben Sie auf einem lokalen Mac- oder Linux-Rechner Folgendes ein:
- sudo nano /etc/hosts
Für einen lokalen Windows-Rechner finden Sie Anweisungen zur Änderung Ihrer Hosts-Datei hier.
Nach Verwenden der in diesem Leitfaden verwendeten Domänen und Ersetzen Ihrer Server IP im Text your_server_IP
sollte Ihre Datei wie folgt aussehen:
127.0.0.1 localhost
127.0.1.1 guest-desktop
your_server_IP example.com
your_server_IP test.com
Speichern und schließen Sie die Datei. Damit werden alle Anfragen z. B. example.com
und test.com
auf unseren Rechner weitergeleitet und auf unseren Server übertragen.
Nach der Konfiguration Ihrer virtuellen Hosts können Sie Ihr Setup testen, indem Sie zu den Domänen gehen, die Sie in Ihrem Web-Browser konfiguriert haben.
http://example.com
Sie sollten eine Seite sehen, die so aussieht:
Sie können auch Ihre zweite Seite besuchen und die Datei sehen, die Sie für Ihre zweite Site erstellt haben.
http://test.com
Wenn beide Sites wie erwartet funktionieren, haben Sie zwei virtuelle Hosts auf ein und demselben Server konfiguriert.
Wenn Sie die Host-Datei Ihres eigenen Rechners angepasst haben, löschen Sie die von Ihnen hinzugefügte Zeilen.
Hier sehen Sie Links zu detaillierteren Leitfäden, die im Zusammenhang zu diesem Tutorial stehen:
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.