Dieser Artikel zeigt Ihnen, wie Sie virtuelle NGINX®-Hosts erstellen, die mehrere Webdomänen bedienen.
Erstellen Sie das Layout für jede Domain
In diesem Beispiel werden zwei Domänen erstellt, domain1.com
und domain2.com
.
Da die Standardberechtigungen nur Sie aktivieren, ist die demo
Benutzer müssen Sie zum Durchsuchen Ihres Home-Ordners NGINX auch Zugriff auf diesen Ordner gewähren, indem Sie den folgenden Befehl ausführen:
chmod 755 /home/demo
Sie können nun das Grundlayout für jede Domain erstellen. In Ihrem home
Verzeichnis, erstellen Sie ein public_html
Ordner, indem Sie den folgenden Befehl ausführen:
mkdir /home/demo/public_html
Erstellen Sie für jede Domain, die Sie hosten möchten, einen Ordner mit einem Standardsatz von Unterordnern, wie in den folgenden Beispielen gezeigt:
mkdir -p /home/demo/public_html/domain1.com/{public,private,,backup}
mkdir -p /home/demo/public_html/domain2.com/{public,private,log,backup}
Diese Befehle erstellen die Ordner public
, private
, log
und backup
forjeder Ihrer domains.log
Fügen Sie öffentliche Inhalte für die Website unter domain1.com hinzu
Dieses Beispiel erstellt eine sehr einfache HTML-Datei im öffentlichen Ordner, mit der Sie schnell überprüfen können, ob der virtuelle Host funktioniert.
Führen Sie den folgenden Befehl aus, um Inhalte für domain1.com
hinzuzufügen :
nano /home/demo/public_html/domain1.com/public/index.html
Geben Sie Code ähnlich dem folgenden Beispiel in die Datei ein:
<html>
<head>
<title>domain1.com</title>
</head>
<body>
<h1>domain1.com</h1>
</body>
</html>
Wiederholen Sie den Vorgang, sodass Sie eine ähnliche HTML-Indexdatei für domain2.com
haben .
Hinweis :Stellen Sie sicher, dass Sie den Inhalt in index.html ändern Datei, um domain2.com
anzuzeigen und nicht domain1.com
.
Layout der virtuellen Hosts
Dieser Artikel verwendet ein Layout im CentOS®-Stil (das eine conf.d
verwendet Verzeichnis zum Speichern Ihrer Konfigurationsdateien) beim Erstellen der virtuellen Hosts. Möglicherweise haben Sie dieses Layout auch, wenn Sie NGINX mithilfe des Paketmanagers oder aus der Quelle installiert haben.
Fügen Sie Ihre virtuellen Hosts zur virtuellen Datei hinzu
Bearbeiten Sie die virtuelle Datei, um domain1.com
hinzuzufügen indem Sie den folgenden Befehl ausführen:
sudo nano /etc/nginx/conf.d/virtual.conf
Hinweis :Stellen Sie sicher, dass Sie den Pfad entsprechend Ihrer Installation anpassen.
Wenn Sie von der Quelle installieren, müssen Sie den folgenden Pfad eingeben:
sudo nano /usr/local/nginx/conf/conf.d/virtual.conf
Fügen Sie der Datei den folgenden Code hinzu:
server {
listen 80;
server_name www.domain1.com;
rewrite ^/(.*) https://domain1.com/$1 permanent;
}
server {
listen 80;
server_name domain1.com;
access_log /home/demo/public_html/domain1.com/log/access.log;
error_log /home/demo/public_html/domain1.com/log/error.log;
location / {
root /home/demo/public_html/domain1.com/public/;
index index.html;
}
}
Das erste Servermodul in der Datei ist eine einfache Rewrite-Regel, die Besucher auf domain1.com
umleitet von www.domain1.com
.
Das zweite Servermodul enthält sehr grundlegende Informationen, einschließlich server_name
, das ist der Domainname, den Sie bereitstellen möchten.
Dann definiert der Code die Protokollspeicherorte, damit Sie sie leicht finden können. Schließlich legt er den Serverstamm und die Indexdatei fest.
NGINX neu laden
Um Ihre Site zu aktivieren, laden Sie NGINX neu, indem Sie den folgenden Befehl ausführen:
sudo /etc/init.d/nginx reload
Zeigen Sie Ihre Website an
Navigieren Sie zu Ihrer Domain, indem Sie die folgende URL in die Navigationsleiste Ihres Webbrowsers einfügen:
https://www.domain1.com
Sie sollten eine einfache Testwebseite sehen, die die Informationen in index.html anzeigt Datei.
Überprüfen Sie die Protokolle
In einem vorherigen Schritt haben Sie der virtual.conf Code hinzugefügt Datei, die die Speicherorte der Protokolle konfiguriert. Führen Sie die folgenden Befehle aus, um zu überprüfen, ob an diesem Speicherort Nowlogs vorhanden sind:
ls /home/demo/public_html/domain1.com/log/
...
access.log error.log
Für weitere Domains wiederholen
Wiederholen Sie denselben Vorgang für Ihren nächsten virtuellen Host, domain2.com
.