Nginx

So installieren Sie mehrere Domänen auf einem Nginx-Server

So installieren Sie mehrere Domänen auf einem Nginx-Server
Heutzutage betreiben viele Webmaster mehrere Domainnamen auf demselben Server, da dies die Kosten und die Komplexität bei der Handhabung vieler Websites reduziert. Als Webserver verwendet dieses Handbuch Nginx aufgrund seiner hohen Leistung, Flexibilität und einfachen Konfiguration. In dieser Anleitung erfahren Sie, wie Sie mehrere Domainnamen auf demselben Nginx-Webserver installieren und den Datenverkehr zu beiden Domains kostenlos verschlüsseln.

Nginx installieren

Standardmäßig wird Ubuntu nicht mit Nginx ausgeliefert. Daher muss es manuell mit den folgenden Befehlen installiert werden.

sudo apt-get update
sudo apt-get install Nginx

Der erste Befehl aktualisiert die lokalen Repository-Informationen, während der zweite Befehl Nginx im System installiert.

Konfigurieren Sie die Firewall

Die Konfiguration der Firewall hängt von der im System installierten Firewall-Software ab. Da auf dem Markt mehrere Firewalls erhältlich sind, ist es nicht einfach, ihnen die Konfiguration beizubringen. Daher zeigt diese Anleitung nur, wie Sie die standardmäßige, eingebaute Firewall konfigurieren – UFW, auch bekannt als unkomplizierte Firewall. Andere Firewalls sollten eine ähnliche Konfiguration wie diese haben.

sudo ufw App-Liste
sudo ufw 'Nginx HTTPS' erlauben
sudo ufw aktivieren

Der erste Befehl listet verfügbare Profile auf, die in der Firewall verwendet werden sollen. Der zweite Befehl verwendet das Nginx HTTPS-Profil in der Zulassungsliste (auch bekannt als Whitelist) der Firewall, und der dritte Befehl aktiviert die Firewall the. In dieser Anleitung wird später die Verwendung von HTTPS gezeigt. HTTPS ist heutzutage notwendig, da es die Datenverbindung zwischen Client und Server sichert. Browser wie Chrome verwenden in Zukunft automatisch die HTTPS-Version jeder Website. Daher muss SSL für jede Website aktiviert sein, insbesondere wenn der Websitebesitzer plant, seinen SEO-Score und die Sicherheit zu verbessern.

Dateisystem konfigurieren

Obwohl Nginx die Bereitstellung von Inhalten über mehrere Domänennamen unterstützt, ist es standardmäßig so konfiguriert, dass Inhalte über eine einzelne Domäne bereitgestellt werden. Der Standardpfad ist Nginx ist /var/www/html. Mehrere Domänen erfordern mehrere Verzeichnisse. Die folgenden Anweisungen zeigen, wie Sie mehrere Verzeichnisse erstellen, um Inhalte über mehrere Domänen bereitzustellen multiple.

  1. Erstellen Sie ein Verzeichnis für jede Domain mit den folgenden Befehlen. Das p-Flag ist notwendig, um übergeordnete Verzeichnisse zu erstellen, d. h. wenn das www oder ein anderes Verzeichnis in der Adresse nicht existiert, erstellt es die gesamte Verzeichniszeile mit dem p-Flag.
  2. sudo mkdir -p /var/www/nucuta.com/html
    sudo mkdir -p /var/www/nucuta.net/html.
  3. Weisen Sie den Verzeichnissen das Eigentum zu. Dies stellt sicher, dass der Benutzer die vollständige Kontrolle über die Verzeichnisse hat. Allerdings wird hier der Benutzer vom aktuell angemeldeten Benutzer übernommen, und daher ist es wichtig, sich mit dem Benutzerkonto anzumelden, das dem Verzeichnis zugewiesen wird. Das erste Segment von $USER ist für den Benutzer und das zweite Segment für die Gruppe, zu der der Benutzer gehört.
  4. sudo chown -R $USER:$USER /var/www/nucuta.com/html
    sudo chown -R $USER:$USER /var/www/nucuta.net/html
  5. Ändern Sie die Berechtigung der Verzeichnisse mit den folgenden Befehlen. Es gibt 3 Entitäten und 3 Berechtigungen in Linux-Dateisystemen. Im folgenden Beispiel steht die erste Ziffer für einen Benutzer, die zweite Ziffer für die Gruppe und die letzte Ziffer für alle (auch bekannt als öffentlich). Die Leseberechtigung hat den Wert 4, die Schreibberechtigung hat den Wert 2 und die Ausführungsberechtigung hat den Wert 1. Diese Zahlen können zusammenaddiert werden, um die Berechtigung einer Entität zu ändern, zum Beispiel 755 bedeutet, USER hat die Berechtigung zum LESEN, SCHREIBEN und AUSFÜHREN (4+2+1 = 7), GROUP hat die Berechtigung zum LESEN und AUSFÜHREN (4+1 = 5), ALLE haben die Berechtigung, dasselbe zu tun. Die Berechtigung wird auf Dateien und Verzeichnisse mit unterschiedlichen Regeln angewendet. Die Regeln sind in der folgenden Tabelle aufgeführt.
  6. sudo chmod -R 755 /var/www/nucuta.com/html
    sudo chmod -R 755 /var/www/nucuta.net/html
  7. Nachdem die Berechtigung zugewiesen wurde, erstellen Sie im Webbrowser eine Standardseite für jede Domäne, wenn die nackte Domäne aufgerufen wird. Naked Domain bedeutet die Domain ohne Subdomains, Beispiel nucuta.com.
  8. nano /var/www/nucuta.com/html/index.html.
    nano /var/www/nucuta.net/html/index.html.
  9. Fügen Sie den folgenden Boilerplate-Code in jede Indexdatei ein und speichern Sie als Index.html im jeweiligen Verzeichnis (wie oben zu sehen).


Willkommen bei Site One


Erfolg!



Nginx konfigurieren

Die Konfiguration von Nginx ist nicht so schwierig, da Nginx standardmäßig mehrere Domänen unterstützt supports. Obwohl es möglich ist, Konfigurationsinformationen mehrerer Domänen in derselben Datei zu verwenden, ist es ratsam, mehrere Dateien für die Konfigurationsinformationen jeder Domäne zu verwenden. Die Standardkonfigurationsdatei heißt „default“ und befindet sich in /etc/nginx/sites-available/default

  1. Navigieren Sie zu /etc/nginx/sites-available/default und löschen Sie alle Konfigurationsinformationen. Verwenden Sie einen Texteditor wie Nano oder Notepad++
  2. nano /etc/nginx/sites-available/default
  3. Kopieren Sie die folgende Konfiguration, fügen Sie sie ein und speichern Sie sie.
  4. Server
    lauschen 80 default_server;
    lauschen [::]:80 default_server;
    root /var/www/html;
    Indexindex.HTML-Index.htm-index.nginx-debian.html;
    Servername _;
    Lage /
    try_files $uri $uri/ =404;

  5. Kopieren Sie die Konfigurationsinformationen in der Standarddatei mit dem folgenden Befehl in eine domänenspezifische Konfigurationsdatei.
  6. sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/nucuta.com
  7. Wiederholen Sie den oben genannten Schritt auch für die andere Domäne mit dem folgenden Befehl.
  8. sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/nucuta.Netz
  9. Öffnen Sie beide Dateien mit einem Texteditor wie nano (nano ) und ändern Sie den Wert der server_name-Direktive wie folgt.
  10. In /etc/nginx/sites-available/nucuta.com-Datei
    server_name nucuta.com
    In /etc/nginx/sites-available/nucuta.net-Datei
    server_name nucuta.Netz
  11. Nachdem beide Dateien konfiguriert wurden, kopieren Sie sie in die folgenden Verzeichnisse, um die Konfigurationsdateien zu aktivieren. Es erstellt eine symbolische Verknüpfung zwischen der eigentlichen Datei und dem Verzeichnis; Daher müssen in Zukunft nur die Dateien in einem Site-verfügbaren Verzeichnis geändert werden, um Änderungen sowohl in Site-verfügbaren als auch Site-aktivierten Verzeichnissen vorzunehmen.
  12. sudo ln -s /etc/nginx/sites-available/nucuta.com /etc/nginx/sites-enabled/
    sudo ln -s /etc/nginx/sites-available/nucuta.net /etc/nginx/sites-enabled/
  13. Gehen Sie die Konfigurationsdateien durch, nehmen Sie weitere Änderungen vor und verwenden Sie die folgenden Befehle, um die Änderungen wirksam zu machen. Der erste Befehl stellt sicher, dass die Konfigurationsdateien frei von ungültigen Konfigurationsinformationen sind, und der zweite Befehl stellt sicher, dass der Server ordnungsgemäß neu geladen oder neu gestartet wird, damit die Änderungen wirksam werden. Verwenden Sie entweder Reload- oder Neustart-Befehle. Reload wird bevorzugt, aber Neustart kann verwendet werden, wenn das Reload nicht geklappt hat.
  14. systemctl config nginx
    systemctl nginx neu laden oder systemctl nginx neu starten.

Konfigurieren Sie die DNS-Einträge

Die Konfiguration der DNS-Einstellungen hängt vom DNS-Anbieter ab. Alle DNS-Anbieter haben jedoch eine ähnliche Schnittstelle. Standardmäßig bietet der Domain-Registrar Zugriff auf die DNS-Einträge. Diese Phase erfordert die IP-Adresse des Servers, auf dem der nginx-Webserver gehostet wird. Das Erhalten der IP-Adresse hängt vollständig von der Plattform ab. Plattformen wie Linode, DigitalOcean, Vultr zeigen die IP im Dashboard an. Wenn es schwer zu finden ist, wenden Sie sich an den Support des jeweiligen Diensteanbieters.

  1. Fügen Sie in den DNS-Einstellungen einen „A“-Eintrag hinzu und verwenden Sie die IP des Servers als Wert, Domainname als Gastgeber. Stellen Sie sicher, dass der hier verwendete Domänenname mit dem in der Nginx-Konfigurationsdatei verwendeten Domänennamen übereinstimmt. Nachdem Sie eine Domäne konfiguriert haben, wiederholen Sie dies auch für die andere Domäne.
  2. Lassen Sie die DNS-Einträge aktualisieren. Normalerweise dauert es bis zu 24 Stunden, aber normalerweise ist es in wenigen Minuten erledigt.

HTTPS aktivieren

Die Aktivierung von HTTPS ist ganz einfach und kann mit letsencrypt kostenlos durchgeführt werden. Letsencrypt ist eine Open-Source-Zertifizierungsstelle, die Webmastern kostenlose SSL-Zertifikate zur Verfügung stellt, um den Datenverkehr zu ihrer Website zu verschlüsseln.

  1. Installieren Sie das Snap-In des Betriebssystems mit dem folgenden Befehl. Beachten Sie, dass dieses Segment einen Snap-Daemon verwendet, um alle erforderlichen Pakete anstelle von apt oder apt-get zu installieren. Snap ist eine alternative Paketverwaltung und ein Bereitstellungstool, mit dem Pakete in Ubuntu und vielen anderen Linux-Betriebssystemen installiert werden können. Dies ist nicht erforderlich, um Ubuntu 16 . zu installieren.04 LTS oder jede andere höhere Version. Führen Sie jedoch trotzdem den letzten Befehl aus, um sicherzustellen, dass der Snap auf dem neuesten Stand ist.
  2. sudo apt-Update
    sudo apt install snapd
    sudo snap install core; Sudo Snap Refresh-Kern
  3. Installieren Sie den certbot, der die SSL-Zertifikate für beide Domänen konfiguriert und erneuert. Ohne certbot SSL-Zertifikate müssen manuell installiert werden. Außerdem muss die Erneuerung auch manuell erfolgen manually. Dies kann ein Problem sein, da letsencrypt-Zertifikate nach 3 Monaten ablaufen. Daher muss das SSL-Zertifikat alle 3 Monate erneuert werden, um sicherzustellen, dass die Site wie erwartet ordnungsgemäß funktioniert. Verwenden Sie den folgenden Befehl, um den certbot mit Leichtigkeit zu installieren.
  4. sudo snap install --classic certbot
  5. Certbot ist im Verzeichnis /snap/bin/certbot installiert. Um die ausführbare certbot-Datei über die Befehlszeile auszuführen, ohne den vollständigen Pfad anzugeben, führen Sie den folgenden Befehl aus. Es erstellt eine symbolische Verknüpfung zwischen snap/bin/certbot und dem Verzeichnis /usr/bin/certbot, wodurch die ausführbare Datei von certbot auf der Befehlszeilenschnittstelle ausgeführt werden kann, ohne ihren vollständigen Pfad anzugeben.
  6. sudo ln -s /snap/bin/certbot /usr/bin/certbot
  7. Konfigurieren Sie die Nginx-Instanz im System mit dem folgenden Befehl. Es gibt einen weiteren Befehl, der bei der Konfiguration von SSL direkt auf die jeweilige Domäne abzielt. Der unten angegebene 2. Befehl installiert und konfiguriert das SSL-Zertifikat für den angegebenen Domänennamen.
  8. sudo certbot -nginx
    certbot --nginx -d nucuta.com
  9. Führen Sie den folgenden Befehl aus, um den Erneuerungsprozess zu simulieren. Der eigentliche Befehl ohne -dry-run Flag wird automatisch ausgeführt, da certbot einen Cronjob konfiguriert, um den Befehl nach einiger Zeit automatisch auszuführen run. Ein Probelauf ist erforderlich, um sicherzustellen, dass der certbot die Zertifikate ohne Hindernisse erneuern kann.
  10. sudo certbot renew --dry-run

Fazit

Das Konfigurieren mehrerer Domainnamen in einem Nginx-Webserver ist ziemlich einfach, da es eine Vielzahl von Optionen bietet, um den Vorgang zu vereinfachen. Certbot ermöglicht die Installation von SSL-Zertifikaten für mehrere Domains für einen Nginx-Webserver. Als SSL-Zertifikat verwendet dieses Handbuch letsencrypt, das SSL-Zertifikate für beliebig viele Domains kostenlos zur Verfügung stellt. Der einzige Nachteil von letsencrypt ist seine kurze Lebensdauer, aber certbot stellt mit seinem automatischen Erneuerungsprozess sicher, dass dies für den Webmaster kein Problem darstellt.

Schlacht um Wesnoth 1.13.6 Entwicklung veröffentlicht
Schlacht um Wesnoth 1.13.6, das letzten Monat veröffentlicht wurde, ist die sechste Entwicklungsversion im 1.13.x-Serie und bietet eine Reihe von Verb...
So installieren Sie League of Legends auf Ubuntu 14.04
Wenn Sie ein Fan von League of Legends sind, dann ist dies eine Gelegenheit für Sie, League of Legends zu testen. Beachten Sie, dass LOL von PlayOnLin...
Installieren Sie das neueste OpenRA-Strategiespiel auf Ubuntu Linux
OpenRA ist eine Libre/Free Real Time Strategy Game Engine, die die frühen Westwood-Spiele wie den Klassiker Command & Conquer: Red Alert Red nachbilde...