Detaillierte Erläuterung der Installation, Bereitstellung und Verwendung von Nginx unter Linux

Detaillierte Erläuterung der Installation, Bereitstellung und Verwendung von Nginx unter Linux

1. Herunterladen

Offizielle Website-Download-Adresse

2. Bereitstellung

2.1 Installationsvoraussetzungen

Zur Installation unter Linux müssen Sie folgende Komponenten installieren

1. gcc und g++
yum installiere gcc-c++
2. pcre
yum install -y pcre pcre-devel
3. zlib
yum install -y zlib zlib-devel
4. openssl
yum install -y openssl openssl-devel

2.2 Installation

1. Entpacken Sie die Nginx-Datei tar -zxvf nginx-1.17.5.tar.gz
2. Installation## Erstellen Sie ein nginx-Installationsverzeichnis mkdir nginx
cd nginx-1.12.2
## Geben Sie den Dateiinstallationspfad an./configure --prefix=/home/lege/nginx
machen
installieren
#Nach Abschluss der Installation wird der Inhalt im angegebenen Pfad /home/lege/nginx installiert, andernfalls wird er im Standardverzeichnis /usr/local/nginx installiert.

2.3 Starten Sie nginx

## Ändern Sie die Konfigurationsdatei cd /home/lege/nginx/conf
vim nginx.conf
## Stellen Sie den Port auf 8080 ein, oder stellen Sie ihn auf den anderen Listen-Port 8080 ein.
## Wechseln Sie in das Startverzeichnis cd /home/lege/nginx/sbin
## Überprüfen Sie, ob ein Problem mit der Konfigurationsdatei vorliegt./nginx -t
##Das Ergebnis ohne Probleme ist wie folgt:
[soa@testsoa04 sbin]$ ./nginx -t
nginx: die Syntax der Konfigurationsdatei /home/lege/nginx/conf/nginx.conf ist in Ordnung
nginx: Test der Konfigurationsdatei /home/lege/nginx/conf/nginx.conf ist erfolgreich
[soa@testsoa04 sbin]$ 
 
## Konfigurationsparameter abfragen./nginx -V
## Für das installierte Nginx müssen Sie die Konfigurationsparameter ändern. /configure --prefix=/home/lege/nginx …Konfigurationsparameter machen
installieren 
Starten Sie dann nginx neu.## Start ./nginx
## Stoppen ./nginx -s stop
## Neustart ./nginx -s reload
## Geben Sie die URL ein, um zu überprüfen, ob der Start erfolgreich war: http://ip:port/

3. Nginx-Protokollbezogene Konfiguration

Das Format der Protokolldefinition:
Syntaxformat: access_log-Pfad [Format [Puffer=Größe] [gzip[=Level]] [flush=Zeit] [if=Bedingung]];
           Zugriff_Abmeldung;
Standardwert: access_log Protokolle/access.log kombiniert;
Umfang: http, Server, Standort, wenn am Standort, limit_except
 
1. Definieren Sie die Syntax des Protokollformats: log_format name [escape=default|json] string ...;
Standardwert: log_format kombiniert "...";
Umfang: http
 
Allgemeine Protokollvariablen: $remote_addr, $http_x_forwarded_for zeichnen die IP-Adresse des Clients auf. $remote_user zeichnet den Benutzernamen des Clients auf. $request zeichnet die angeforderte URL und das HTTP-Protokoll (GET, POST, DEL usw.) auf.
$status zeichnet den Anforderungsstatus auf. $body_bytes_sent die Anzahl der an den Client gesendeten Bytes, ausschließlich der Größe des Antwortheaders. Diese Variable ist mit dem Parameter „%B“ im Apache-Modul mod_log_config kompatibel.
$bytes_sent Die Gesamtzahl der an den Client gesendeten Bytes.
$connection Die Seriennummer der Verbindung.
$connection_requests Die aktuelle Anzahl der über eine Verbindung empfangenen Anfragen.
$msec Zeit zum Schreiben des Protokolls. Die Einheit ist Sekunden und die Genauigkeit beträgt Millisekunden.
$pipe Wenn die Anfrage über HTTP-Pipelining gesendet wird, ist der Pipe-Wert „p“, andernfalls „.“.
$http_referer zeichnet die Seite auf, von der aus auf den Link zugegriffen wurde. $http_user_agent zeichnet Informationen zum Client-Browser auf. $request_length Die Länge der Anfrage (einschließlich Anfragezeile, Anfrageheader und Anfragetext).
$request_time Anforderungsverarbeitungszeit in Sekunden, mit Millisekundengenauigkeit; beginnend mit dem ersten vom Client gelesenen Byte bis zum Senden des letzten Zeichens an den Client und Schreiben in das Protokoll.
$time_iso8601 Lokale Zeit im ISO8601-Standardformat.
$time_local Lokale Zeit im gängigen Protokollformat.
 
Beispiel:
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
           '$status $body_bytes_sent "$http_referer" "$request_time" '
           '"$http_user_agent" "$http_x_forwarded_for"

Für die Bereinigung von Protokollen können Sie geplante Linux-Aufgaben verwenden. Das Beispiel lautet wie folgt:

Das Skript clear.sh lautet wie folgt:

#!/bin/bash
#LOGS_PATH ist der Protokollspeicherpfad LOGS_PATH=/home/lege/data/nginx/logs
GESTERN=$(Datum -d "gestern" +%Y-%m-%d)
KEEPTIME=$(Datum -d "-3 Tage" +%Y-%m-%d)
#Protokolldateien aufteilen mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YESTERDAY}.log
mv ${LOGS_PATH}/error.log ${LOGS_PATH}/error_${GESTERN}.log
#Lesen Sie das Protokoll erneut über die Nginx-Semaphorsteuerung, /web/nginx/ ist das Nginx-Installationsverzeichnis kill -USR1 $(cat /home/lege/data/nginx/logs/nginx.pid)
#Löschen Sie die Protokolldatei von vor 3 Tagen rm -f ${LOGS_PATH}/access_{KEEPTIME}.log
rm -f ${LOGS_PATH}/error_{KEEPTIME}.log
Echo 0
 
crontab -e fügen Sie Folgendes hinzu:
0 0 * * * /bin/sh /home/lege/data/nginx/logs/clear.sh
 
crontab -l Prüfen, ob das Hinzufügen erfolgreich war

4. Verwenden von nginx als Datei-Downloader

http {
  Server-Tokens aus;
  Client-Header-Puffergröße 8k;
  maximale Körpergröße des Clients: 130 m;
  Proxy-Puffergröße 64k;
  Proxy-Puffer 8 64k;
  log_format Zugriff '$remote_addr $host $remote_user [$time_local] $status $request_length $body_bytes_sent $request_time 0 0 0 - "-" "$request" "$http_referer" "$http_user_agent" $http_cookie $bytes_sent';
  access_log Protokolle/access.log Zugriff;
  Keepalive-Anfragen 16;
  KeepAlive-Timeout 5;
  Server {
    hören Sie 8080;
    Servername localhost;
    Zeichensatz UTF-8;
    Standort / {
      Standardtyp „Anwendung/Oktett-Stream“;
      add_header Inhaltsdisposition "Anhang";
      ## Konfigurieren Sie den Pfad der herunterladbaren Datei. Der folgende Pfad wird zum Testen unter Windows verwendet. Linux kann auch durch den entsprechenden Pfad root D://tools//nginx-1.17.4//conf ersetzt werden;
     }
   }
}

Starten Sie nginx nach Abschluss der Konfiguration neu, rufen Sie dann den Browser auf und geben Sie den Dateinamen unter http://ip:8080/conf ein, um die entsprechende Datei herunterzuladen. PS: Sie können keine Verzeichnisse herunterladen, sondern nur Dateien.

Zusammenfassen

Oben ist der vom Herausgeber vorgestellte Installations-, Bereitstellungs- und Verwendungsprozess von nginx unter Linux. Ich hoffe, es wird für alle hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung des Nginx-Kompilierungs- und Installationstutorials sowie der Kompilierungsparameter unter Linux
  • So installieren Sie Nginx unter Linux (pcre und openssl)
  • Detaillierte Erläuterung der Installation und Konfiguration von nginx unter Linux
  • So installieren und starten Sie nginx unter Linux
  • Detaillierte Schritte zum Installieren und Erstellen eines Nginx-Servers unter Linux
  • So installieren Sie nginx unter Linux
  • Installieren Sie das WAF-Modul für Nginx unter Linux
  • Tutorial zur Deinstallation und Installation von Linux-Server nginx
  • Eine einfache Möglichkeit, zwei Nginx unter einem Linux-System zu installieren
  • So installieren Sie Nginx schnell unter Linux

<<:  Beenden Sie eine Reihe von MySQL-Datenbanken mit nur einem Shell-Skript wie diesem (empfohlen)

>>:  Vue.js-Framework implementiert Warenkorbfunktion

Artikel empfehlen

So importieren Sie SQL-Dateien in Navicat Premium

Ich habe heute mit der Arbeit an meinem Abschluss...

Beispielcode zur Implementierung der WeChat-Kontoaufteilung mit Nodejs

Das Geschäftsszenario des Unternehmens erfordert ...

Der gesamte Prozess der Entwicklung eines Google-Plug-Ins mit vue+element

Einfache Funktion: Klicken Sie auf das Plug-In-Sy...

Ausführliche Erklärung zu Sitzung und Cookie in Tomcat

Vorwort HTTP ist ein zustandsloses Kommunikations...

CSS löst das Problem der Front-End-Bildverformung perfekt

Ich habe in der Toutiao IT School einen Artikel g...

Schnellstart-Tutorial zum Nginx-Dienst

Inhaltsverzeichnis 1. Einführung in Nginx 1. Was ...

Detaillierte Erläuterung der Verwendung des DockerHub-Image-Repository

Bisher wurden die von uns verwendeten Images alle...

MySql-Gruppierung und zufälliges Abrufen eines Datenelements aus jeder Gruppe

Idee: Einfach erst zufällig sortieren und dann gr...

So vergleichen Sie zwei Datenbanktabellenstrukturen in MySQL

Während des Entwicklungs- und Debugging-Prozesses...

Ausführliche Erläuterung der HTML-Grundlagen (Teil 2)

1. Liste Der Listen-UL- Container wird mit einer ...

Nachteile und sinnvolle Verwendung des MySQL-Datenbankindex

Inhaltsverzeichnis Richtige Verwendung von Indize...

Detailliertes Tutorial zur Installation von Protobuf 3 unter Ubuntu

Wann ist die Installation durchzuführen? Wenn Sie...

Detaillierte Erläuterung der MySQL-Transaktionsverwaltungsvorgänge

Dieser Artikel beschreibt die MySQL-Transaktionsv...

So verwenden Sie gdb zum Debuggen von Kerndateien in Linux

1.core-Datei Wenn während der Programmausführung ...