So installieren Sie Nginx unter Ubuntu 16.04

Einführung

Nginx ist einer der beliebtesten Webserver der Welt und für das Hosting einiger der meistbesuchten Websites im Internet verantwortlich. Es ist in den meisten Fällen ressourcenschonender als Apache und kann als Webserver oder Reverse-Proxy verwendet werden.

In diesem Handbuch wird erläutert, wie Sie Nginx auf Ihrem Ubuntu 16.04-Server installieren.

Voraussetzungen

Bevor Sie mit diesem Handbuch beginnen, sollten Sie einen regulären Benutzer ohne Rootberechtigung mitsudo-Berechtigungen auf Ihrem Server konfiguriert haben. Sie können lernen, wie Sie ein reguläres Benutzerkonto konfigurieren, indem Sie unsereninitial server setup guide for Ubuntu 16.04 folgen.

Wenn Sie über ein Konto verfügen, melden Sie sich als Benutzer ohne Rootberechtigung an, um zu beginnen.

Schritt 1: Installieren Sie Nginx

Nginx ist in den Standard-Repositorys von Ubuntu verfügbar, daher ist die Installation recht unkompliziert.

Da dies unsere erste Interaktion mit dem Verpackungssystem vonaptin dieser Sitzung ist, aktualisieren wir unseren lokalen Paketindex, damit wir Zugriff auf die neuesten Paketlisten haben. Danach können wirnginx installieren:

sudo apt-get update
sudo apt-get install nginx

Nach dem Akzeptieren des Verfahrens installiertapt-get Nginx und alle erforderlichen Abhängigkeiten auf Ihrem Server.

Schritt 2: Passen Sie die Firewall an

Bevor wir Nginx testen können, müssen wir Ihre Firewall-Software konfigurieren, um den Zugriff auf den Dienst zu ermöglichen. Nginx registriert sich bei der Installation als Service beiufw, unserer Firewall. Dies macht es ziemlich einfach, Nginx Zugriff zu gewähren.

Wir können die Anwendungskonfigurationen auflisten, mit denenufw arbeiten kann, indem wir Folgendes eingeben:

sudo ufw app list

Sie sollten eine Liste der Anwendungsprofile erhalten:

OutputAvailable applications:
  Nginx Full
  Nginx HTTP
  Nginx HTTPS
  OpenSSH

Wie Sie sehen können, gibt es drei Profile für Nginx:

  • Nginx Full: Dieses Profil öffnet sowohl Port 80 (normaler, unverschlüsselter Webverkehr) als auch Port 443 (TLS / SSL-verschlüsselter Verkehr).

  • Nginx HTTP: Dieses Profil öffnet nur Port 80 (normaler, unverschlüsselter Webverkehr)

  • Nginx HTTPS: Dieses Profil öffnet nur Port 443 (TLS / SSL-verschlüsselter Verkehr)

Es wird empfohlen, das restriktivste Profil zu aktivieren, das den von Ihnen konfigurierten Datenverkehr weiterhin zulässt. Da wir SSL für unseren Server noch nicht konfiguriert haben, müssen wir in diesem Handbuch nur den Datenverkehr auf Port 80 zulassen.

Sie können dies aktivieren, indem Sie Folgendes eingeben:

sudo ufw allow 'Nginx HTTP'

Sie können die Änderung überprüfen, indem Sie Folgendes eingeben:

sudo ufw status

In der angezeigten Ausgabe sollte HTTP-Verkehr zulässig sein:

OutputStatus: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
Nginx HTTP                 ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
Nginx HTTP (v6)            ALLOW       Anywhere (v6)

Schritt 3: Überprüfen Sie Ihren Webserver

Am Ende des Installationsprozesses startet Ubuntu 16.04 Nginx. Der Webserver sollte bereits in Betrieb sein.

Wir können mit dem Init-System vonsystemdüberprüfen, ob der Dienst ausgeführt wird, indem wir Folgendes eingeben:

systemctl status nginx
Output● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2016-04-18 16:14:00 EDT; 4min 2s ago
 Main PID: 12857 (nginx)
   CGroup: /system.slice/nginx.service
           ├─12857 nginx: master process /usr/sbin/nginx -g daemon on; master_process on
           └─12858 nginx: worker process

Wie Sie oben sehen können, scheint der Dienst erfolgreich gestartet worden zu sein. Der beste Weg, dies zu testen, ist jedoch, eine Seite von Nginx anzufordern.

Sie können auf die Standard-Nginx-Startseite zugreifen, um zu bestätigen, dass die Software ordnungsgemäß ausgeführt wird. Sie können über den Domänennamen oder die IP-Adresse Ihres Servers darauf zugreifen.

Wenn Sie keinen Domainnamen für Ihren Server eingerichtet haben, können Sie hierhow to set up a domain with DigitalOcean lernen.

Wenn Sie keinen Domainnamen für Ihren Server einrichten möchten, können Sie die öffentliche IP-Adresse Ihres Servers verwenden. Wenn Sie die IP-Adresse Ihres Servers nicht kennen, können Sie sie auf verschiedene Arten über die Befehlszeile abrufen.

Geben Sie dies an der Eingabeaufforderung Ihres Servers ein:

ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

Sie erhalten einige Zeilen zurück. Sie können jeden in Ihrem Webbrowser ausprobieren, um zu sehen, ob er funktioniert.

Eine Alternative besteht darin, Folgendes einzugeben:

sudo apt-get install curl
curl -4 icanhazip.com

Wenn Sie die IP-Adresse oder Domain Ihres Servers haben, geben Sie diese in die Adressleiste Ihres Browsers ein:

http://server_domain_or_IP

Sie sollten die Standard-Nginx-Landingpage sehen, die ungefähr so ​​aussehen sollte:

Nginx default page

Diese Seite ist einfach in Nginx enthalten, um anzuzeigen, dass der Server ordnungsgemäß ausgeführt wird.

Schritt 4: Verwalten Sie den Nginx-Prozess

Nachdem Sie Ihren Webserver eingerichtet haben, können wir einige grundlegende Verwaltungsbefehle durchgehen.

Um Ihren Webserver zu stoppen, können Sie Folgendes eingeben:

sudo systemctl stop nginx

Geben Sie Folgendes ein, um den Webserver nach dem Stoppen zu starten:

sudo systemctl start nginx

Geben Sie Folgendes ein, um den Dienst zu beenden und erneut zu starten:

sudo systemctl restart nginx

Wenn Sie lediglich Konfigurationsänderungen vornehmen, kann Nginx häufig neu geladen werden, ohne dass Verbindungen unterbrochen werden. Dazu kann dieser Befehl verwendet werden:

sudo systemctl reload nginx

Standardmäßig ist Nginx so konfiguriert, dass es automatisch startet, wenn der Server startet. Wenn Sie dies nicht möchten, können Sie dieses Verhalten deaktivieren, indem Sie Folgendes eingeben:

sudo systemctl disable nginx

Um den Dienst wieder für den Start beim Start zu aktivieren, können Sie Folgendes eingeben:

sudo systemctl enable nginx

Schritt 5: Machen Sie sich mit wichtigen Nginx-Dateien und -Verzeichnissen vertraut

Nachdem Sie nun wissen, wie der Dienst selbst verwaltet wird, sollten Sie sich einige Minuten Zeit nehmen, um sich mit einigen wichtigen Verzeichnissen und Dateien vertraut zu machen.

Inhalt

  • /var/www/html: Der eigentliche Webinhalt, der standardmäßig nur aus der zuvor angezeigten Standard-Nginx-Seite besteht, wird aus dem Verzeichnis/var/www/html bereitgestellt. Dies kann durch Ändern der Nginx-Konfigurationsdateien geändert werden.

Serverkonfiguration

  • /etc/nginx: Das Nginx-Konfigurationsverzeichnis. Alle Nginx-Konfigurationsdateien befinden sich hier.

  • /etc/nginx/nginx.conf: Die Hauptkonfigurationsdatei von Nginx. Dies kann geändert werden, um Änderungen an der globalen Nginx-Konfiguration vorzunehmen.

  • /etc/nginx/sites-available/: Das Verzeichnis, in dem pro Standort „Serverblöcke“ gespeichert werden können. Nginx verwendet die in diesem Verzeichnis gefundenen Konfigurationsdateien nur, wenn sie mit dem Verzeichnissites-enabledverknüpft sind (siehe unten). In der Regel wird die gesamte Serverblockkonfiguration in diesem Verzeichnis ausgeführt und anschließend durch Verknüpfen mit dem anderen Verzeichnis aktiviert.

  • /etc/nginx/sites-enabled/: Das Verzeichnis, in dem aktivierte "Serverblöcke" pro Standort gespeichert sind. Diese werden normalerweise durch Verknüpfen mit Konfigurationsdateien erstellt, die sich im Verzeichnissites-availablebefinden.

  • /etc/nginx/snippets: Dieses Verzeichnis enthält Konfigurationsfragmente, die an anderer Stelle in der Nginx-Konfiguration enthalten sein können. Potenziell wiederholbare Konfigurationssegmente sind gute Kandidaten für das Refactoring in Snippets.

Server-Protokolle

  • /var/log/nginx/access.log: Jede Anforderung an Ihren Webserver wird in dieser Protokolldatei aufgezeichnet, sofern Nginx nicht anders konfiguriert ist.

  • /var/log/nginx/error.log: Alle Nginx-Fehler werden in diesem Protokoll aufgezeichnet.

Fazit

Nachdem Sie Ihren Webserver installiert haben, haben Sie viele Optionen für die Art des Inhalts und die Technologien, die Sie verwenden möchten, um eine umfassendere Erfahrung zu erzielen.

Erfahren Sie hierhow to use Nginx server blocks. Wenn Sie einen vollständigeren Anwendungsstapel erstellen möchten, lesen Sie diesen Artikel zuhow to configure a LEMP stack on Ubuntu 16.04.