Eine kurze Einführung in die Nginx-Konfiguration und -Parameter

巴扎黑
Freigeben: 2023-03-15 09:44:02
Original
1506 Leute haben es durchsucht


Zusammenfassung: Nginx-Grundkonfiguration und Parameterbeschreibung

#Laufender Benutzer
Benutzer niemand;
#Starten Sie die Prozess, normalerweise gleich der Anzahl der CPUs
worker_processes 1;

#Globales Fehlerprotokoll und PID-Datei
#error_log logs/error.log;
#error_log logs/error .log-Hinweis ;
#error_log logs/error.log info;

#pid logs/nginx.pid;

#Arbeitsmodus und maximale Anzahl von Verbindungen
Ereignisse {
#epoll Es handelt sich um eine Methode zum Multiplexen von E/A (I/O-Multiplexing). Wird nur für Linux2.6-Kernel und höher verwendet und kann die Leistung von Nginx erheblich verbessern.

# Die maximale Anzahl gleichzeitiger Verbindungen für einen einzelnen Hintergrundarbeitsprozess

worker_connections 1024;


# Die Gesamtzahl gleichzeitiger Verbindungen ist das Produkt aus worker_processes und worker_connections

# Das heißt, max_clients = worker_processes * worker_connections

# Wenn Reverse eingestellt ist Im Fall von Proxy, max_clients = worker_processes * worker_connections / 4 Warum
# Warum sollte der obige Reverse-Proxy durch 4 geteilt werden?
# Gemäß den oben genannten Bedingungen kann der Nginx-Server unter normalen Umständen damit umgehen. Die maximale Anzahl von Verbindungen beträgt: 4 * 8000 = 32000
# Die Einstellung des worker_connections-Werts hängt von der physischen Speichergröße ab
# Da die Parallelität E/A-Einschränkungen unterliegt, muss der Wert von max_clients kleiner sein als die maximale Anzahl von Dateien, die das System öffnen kann
# Und die maximale Anzahl von Dateien, die vom System geöffnet werden können, ist proportional zur Speichergröße . Im Allgemeinen beträgt die Anzahl der Dateien, die auf einem Computer mit 1 GB Speicher geöffnet werden können, etwa 100.000
# Werfen wir einen Blick auf die Anzahl der Dateihandles, die von einem VPS mit 360 MB Speicher geöffnet werden können:
# $ cat /proc/sys/fs/file-max
# Ausgabe 34336
# 32000 < 34336, das heißt, die Gesamtzahl der gleichzeitigen Verbindungen ist geringer als die Gesamtzahl der Dateihandles, die das System ausführen kann öffnen, damit das Betriebssystem innerhalb des akzeptablen Bereichs sein kann
# Daher muss der Wert von worker_connections entsprechend der Anzahl der worker_processes-Prozesse und der maximalen Gesamtzahl der Dateien, die das System öffnen kann, entsprechend eingestellt werden
# damit die Gesamtzahl der Parallelität geringer ist als die maximale Anzahl von Dateien, die das Betriebssystem öffnen kann
# Das Wesentliche ist, entsprechend der physischen CPU und dem Speicher des Hosts zu konfigurieren
# Natürlich theoretisch Die Gesamtzahl der Parallelität kann von der tatsächlichen Zahl abweichen, da der Host über andere Arbeitsprozesse verfügt, die Systemressourcen verbrauchen müssen.
# ulimit -SHn 65535

}

http {

#Mime-Typ festlegen, der Typ wird durch die mime.type-Datei definiert

include mime.types;
default_type application/octet-stream;
#Set log format
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

access_log logs/access.log main;

#sendfile-Direktive gibt an, ob Nginx die Sendfile-Funktion (Zero-Copy-Modus) aufruft, um Dateien auszugeben.
#Für normale Anwendungen muss sie aktiviert sein ,
#Wenn es für Anwendungen mit hoher Festplatten-E/A-Belastung wie Downloads verwendet wird, kann es ausgeschaltet werden,
# um die Festplatten- und Netzwerk-E/A-Verarbeitungsgeschwindigkeit auszugleichen und die Systemverfügbarkeit zu reduzieren.
sendfile on;
# tcp_nopush on;

#Zeitüberschreitungszeit der Verbindung
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;

#Gzip-Komprimierung einschalten
gzip on;
gzip_disable "MSIE [1-6].";

#Anforderungspuffer festlegen
client_header_buffer_size 128k;
large_client_header_buffers 4 128k;

# Legen Sie die Konfiguration des virtuellen Hosts fest
Server {
#Überwachen Sie Port 80
Listen 80;
#Definieren Sie die Verwendung von www.nginx.cn für den Zugriff auf
Servername www.nginx.cn;

#Definieren Sie den Standardspeicherort des Website-Stammverzeichnisses des Servers
root html;

#Legen Sie das Zugriffsprotokoll dieses virtuellen Hosts fest
access_log logs/nginx.access.log main;

#Standardanforderung
Speicherort / {

#Definieren Sie den Namen der Homepage-Indexdatei
index index.php index.html index.htm;

}

#Definieren Sie die Fehleraufforderungsseite
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}

#Statische Datei, Nginx kümmert sich darum von alleine
location ~ ^/(images|javascript| js|css|flash|media|static)/ {

#Ablaufzeit beträgt 30 Tage, statische Dateien werden nicht sehr oft aktualisiert, die Ablaufzeit kann größer eingestellt werden,
#Wenn sie häufig aktualisiert wird, kann sie kleiner eingestellt werden.
läuft 30 Tage ab;
}

#PHP-Skriptanfragen werden alle zur Verarbeitung an FastCGI weitergeleitet.
Speicherort ~ .php$ {
fastcgi_pass 127.0.0.1: 9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

#Kein Zugriff auf .htxxx-Dateien
Speicherort ~ /. ht {
alles ablehnen;
}

}
}


Das obige ist der detaillierte Inhalt vonEine kurze Einführung in die Nginx-Konfiguration und -Parameter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage