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
# Die Gesamtzahl gleichzeitiger Verbindungen ist das Produkt aus worker_processes und 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 definiertinclude 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!