GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie die neueste Version von Nginx unter Ubuntu 18.04, Ubuntu 20.04

Zuvor haben wir besprochen, wie der LEMP-Stack, ein gängiger Software-Stack zum Hosten dynamischer Websites, auf Ubuntu 18.04 LTS installiert wird. Software in der Ubuntu LTS-Version (Long Term Support) ist jedoch häufig veraltet. In diesem Tutorial erfahren wir, wie Sie die neueste Version von Nginx unter Ubuntu 18.04 und Ubuntu 20.04 installieren. Zum Zeitpunkt der Erstellung dieses Artikels ist die neueste Version von Nginx 1.17.0, veröffentlicht am 21. Mai 2019. Sie können das Änderungsprotokoll hier einsehen.

Installieren der neuesten Nginx-Version auf Ubuntu 18.04, 20.04 aus dem offiziellen Nginx-Repository

Nginx.org unterhält ein Repository für Ubuntu. Wir können dieses Repository verwenden, um die neueste Version von Nginx zu installieren. Erstellen Sie zunächst mit dem folgenden Befehl eine Repository-Quelldatei für Nginx. Nano ist ein Befehlszeilen-Texteditor.

sudo nano /etc/apt/sources.list.d/nginx.list

Fügen Sie die folgenden zwei Zeilen in die Datei ein.

deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu/ bionic nginx
deb-src http://nginx.org/packages/mainline/ubuntu/ bionic nginx

Wenn Sie Ubuntu 20.04 verwenden, ändern Sie bionic zu focal .

deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu/ disco nginx
deb-src http://nginx.org/packages/mainline/ubuntu/ disco nginx

Um die Datei im Nano-Texteditor zu speichern, drücken Sie CTRL+O , und drücken Sie dann Enter bestätigen. Drücken Sie CTRL+X beenden. Um die Integrität der aus diesem Repository heruntergeladenen Pakete zu überprüfen, müssen wir den öffentlichen Nginx-Schlüssel mit den folgenden Befehlen importieren.

wget http://nginx.org/keys/nginx_signing.key

sudo apt-key add nginx_signing.key

Sobald das Repository zu Ihrem Ubuntu 18.04-System hinzugefügt wurde, führen Sie den folgenden Befehl aus, um die Repository-Informationen zu aktualisieren.

sudo apt update

Wenn Sie Nginx aus dem standardmäßigen Ubuntu-Software-Repository installiert haben, müssen Sie es entfernen.

sudo apt remove nginx nginx-common nginx-full nginx-core

Möglicherweise möchten Sie auch die Hauptkonfigurationsdatei von Nginx /etc/nginx/nginx.conf sichern da sie durch eine neue nginx.conf ersetzt wird Datei, wenn wir später die neueste Version von Nginx installieren.

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak

Ihre vorhandenen Serverblockdateien (auch bekannt als virtuelle Hostdatei) bleiben intakt. Führen Sie nun den folgenden Befehl aus, um Nginx aus dem nginx.org-Repository zu installieren.

sudo apt install nginx

Wenn der apt-Paketmanager Sie fragt, ob Sie eine neue Version der Datei /etc/nginx/nginx.conf installieren möchten, können Sie mit Nein antworten.

Testen Sie nach der Installation von Nginx die Nginx-Konfiguration.

sudo nginx -t

Wenn der Test erfolgreich ist, starten Sie Nginx.

sudo systemctl start nginx

Autostart beim Booten aktivieren.

sudo systemctl enable nginx

Um den Status von Nginx zu überprüfen, führen Sie

aus
systemctl status nginx

Ausgabe:

● nginx.service - nginx - high performance web server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2019-05-26 21:01:10 CST; 3s ago
     Docs: http://nginx.org/en/docs/
  Process: 16159 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
 Main PID: 16160 (nginx)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/nginx.service
           ├─16160 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
           └─16161 nginx: worker process

May 26 21:01:10 bionic.local.domain systemd[1]: Starting nginx - high performance web server...
May 26 21:01:10 bionic.local.domain systemd[1]: Started nginx - high performance web server.

Um die Nginx-Version zu überprüfen, verwenden Sie diesen Befehl:

nginx -v

Ausgabe:

nginx version: nginx/1.17.0

Sie können auch detailliertere Informationen abrufen mit:

nginx -V

Ausgabe:

Festlegen des Nginx-Prozessbenutzers

Das Nginx-Paket aus dem nginx.org-Repository set nginx als Benutzer des Nginx-Prozesses, was aus der ersten Zeile von /etc/nginx/nginx.conf abgeleitet werden kann Datei. (Wenn Sie sich entschieden haben, die neue Version von /etc/nginx/nginx.conf zu installieren Datei.)

user nginx;

Der Standardbenutzer und die Standardgruppe des PHP-FPM-Prozesses ist jedoch www-data wie in /etc/php/7.2/fpm/pool.d/www.conf zu sehen ist Datei.

user = www-data
group = www-data

Also müssen wir www-data setzen als Benutzer des Nginx-Prozesses in /etc/nginx/nginx.conf Datei.

sudo nano /etc/nginx/nginx.conf

Ändern

user nginx;

zu

user www-data;

Speichern und schließen Sie die Datei. Laden Sie dann Nginx neu.

sudo systemctl reload nginx

Einschließen von Serverblockdateien

Standardmäßig nur Dateien unter /etc/nginx/conf.d/ Verzeichnis enthalten sein. Wenn Sie auch Serverblockdateien in sites-enabled verwenden möchten Verzeichnis, stellen Sie dann sicher, dass die folgenden Zeilen in http hinzugefügt werden Abschnitt von nginx.conf Datei.

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;

Installieren Sie das Certbot Nginx-Plugin

Wenn Sie Nginx zuvor aus dem Ubuntu-Repository installiert haben, wurde das Paket python3-certbot-nginx wahrscheinlich entfernt, als Sie Nginx aus dem nginx.org-Repository installiert haben. Wir müssen es erneut installieren, damit Ihr TLS-Zertifikat wie gewohnt automatisch verlängert werden kann.

sudo apt install python3-certbot-nginx

So starten Sie Nginx automatisch neu

Manchmal kann Nginx aus verschiedenen Gründen abstürzen. Wenn Sie es vorziehen, dass Nginx nach einem Absturz automatisch neu gestartet wird, müssen wir die Nginx-Diensteinheit bearbeiten. Kopieren Sie zuerst die ursprüngliche Nginx-Diensteinheit in /etc/systemd/system/ Verzeichnis.

sudo cp /lib/systemd/system/nginx.service /etc/systemd/system/nginx.service

Bearbeiten Sie dann die Serviceeinheit.

sudo nano /etc/systemd/system/nginx.service

Fügen Sie die folgende Zeile in [service] hinzu Abschnitt.

Restart=always
RestartSec=2

So:

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
Restart=always
RestartSec=2

Dadurch versucht Nginx, sich nach einem Absturz alle 2 Sekunden neu zu starten. Speichern und schließen Sie die Datei. Starten Sie dann Nginx neu.

sudo systemctl restart nginx

Nächster Schritt

Ich hoffe, dieses Tutorial hat Ihnen geholfen, die neueste Version von Nginx auf Ubuntu 18.04 und Ubuntu 20.04 zu installieren. Möglicherweise möchten Sie auch die neueste Version des MariaDB-Datenbankservers auf Ubuntu 18.04 und 20.04 installieren.

  • So installieren Sie MariaDB 10.5 auf Ubuntu 18.04, Ubuntu 20.04

Und wenn Ihnen Sicherheit am Herzen liegt, können Sie die Webanwendungs-Firewall von ModSecurity einrichten, um Ihre WordPress-Site vor Hackern zu schützen.

  • So richten Sie ModSecurity mit Nginx unter Debian/Ubuntu ein

Wenn Sie diesen Beitrag nützlich fanden, abonnieren Sie wie immer unseren kostenlosen Newsletter um neue Tipps und Tricks zu erhalten 🙂


Ubuntu
  1. So installieren Sie die neueste Version von Handbrake unter Ubuntu

  2. So installieren Sie den neuesten Vim auf Ubuntu

  3. Wie installiere ich die neueste Version von Nitroshare auf Ubuntu?

  4. So installieren Sie g ++ unter Ubuntu

  5. So installieren Sie ClamAV unter Ubuntu 20.04

Wie installiere ich die neueste Version von GCC unter Ubuntu 20.04?

So installieren Sie Nginx auf Ubuntu

So installieren Sie Nginx unter Ubuntu 15.04

So installieren Sie Monitorix unter Ubuntu 16.04

So installieren Sie die Nginx Mainline-Version unter Ubuntu 16.04 LTS

So installieren Sie NGINX unter Ubuntu 18.04