1. Modulinstallation
Die Installationsmethode für Nginx-Module von Drittanbietern wird hier übersprungen.
Konfigurationsparameter
./configure --prefix=/usr/local/nginx-1.4.1 --with-http_stub_status_module \ --add-module=../ngx_http_log_request_speed
2. Befehl log_request_speed
2.1 log_request_speed_filter
Syntax:
log_request_speed_filter [on|off]
Konfigurationsabschnitt: n/a
Kontext: Standort, Server, http
Aktivieren oder deaktivieren Sie das Modul
2.2 log_request_speed _filter_timeout
Grammatik:
log_request_speed_filter_timeout [num sec]
Standard: 5 Sekunden
Konfigurationsabschnitt: Standort, Server, http
Dies ist kein echter Timeout, aber es bedeutet, dass, wenn die Anfrage die hier angegebene Zeit überschreitet, sie im Nginx-Fehlerprotokoll aufgezeichnet wird. Der Standardwert ist 5000 Mikrosekunden (5 Sekunden), wenn eine Anfrage weniger als 5 Sekunden dauert, wird die Anfrage nicht im Protokoll aufgezeichnet, aber wenn sie 5 Sekunden überschreitet, wird die Anfrage im Nginx-Fehlerprotokoll aufgezeichnet
3 Verwendungsbeispiel
3.1 Nginx-Konfiguration
http{ log_request_speed_filter on; log_request_speed_filter_timeout 3; ... }
Die im Fehlerprotokoll aufgezeichneten langsamen Anforderungen lauten wie folgt
3.2 Protokollanalyse
cd /usr/local/nginx-1.4.1/logs wget http://wiki.nginx.org/images/a/a8/log_analyzer.tar.gz tar -xzvf log_analyzer.tar.gz cd request_speed_log_analyzer # cat ../error.log | grep 'process request'| ./analyzer.pl -r
post /wp-admin/admin-ajax.php http/1.1 --- avg ms: 1182, value count: 2 get /shmb/1145.html http/1.1 --- avg ms: 2976, value count: 1 <--- the winner
Aus dem Protokoll haben wir festgestellt, dass es hier zwei langsame Anforderungen gibt, die langsamste /shmb/ 1145.html, und es ist auch als „der Gewinner“ gekennzeichnet, Autor, Sie gewinnen. Sehr humorvoll.
3.3 Skriptsyntax analysieren
# ./analyzer.pl -h
-h: Diese Hilfemeldung # Hilfemeldung anzeigen
-u: Gruppieren nach Upstream # Gruppieren nach Upstream
-o: Gruppieren nach Host # Gruppieren nach Host
-r: Auf Anfrage gruppieren # Auf Anfrage gruppieren, dies empfehlen
4. Nginx-Testversion
Der Autor testet derzeit nur unter 0.6.35 und 0.7.64 und kann nicht garantieren, dass dies möglich ist in anderen Umgebungen verwendet werden. Meine aktuelle Testversion ist 1.4.1, die derzeit normal verwendet wird. Bitte testen Sie sie, bevor Sie sie verwenden.
nginx ersetzt Website-Antwortinhalt (ngx_http_sub_module)
ngx_http_sub_module-Modul ist ein Filter, der die Zeichenfolge im Website-Antwortinhalt ändert, wenn Sie beispielsweise alle „jb51“ im Antwortinhalt durch „diese Site“ ersetzen möchten. , dies Das Modul wurde in Nginx integriert, ist jedoch nicht standardmäßig installiert. Wenn Sie es installieren müssen, müssen Sie die Konfigurationsparameter hinzufügen: --with-http_sub_module
1 Anweisungen (Anweisungen)
Syntax:
sub_filter string replacement;
Standardwert: –
Konfigurationsabschnitt: Server, Standort
Einstellungen müssen die Beschreibungszeichenfolge verwenden, um die Beschreibungszeichenfolge zu ersetzen, und die Ersetzung ist die neuer String, der Variablen enthalten kann.
Syntax:
sub_filter_last_modified on | off;
Standardwert: sub_filter_last_modified off;
Konfigurationsabschnitt: http, server, location
Dieser Befehl wurde in dieser Version nicht hinzugefügt und kann ignoriert werden „Zuletzt geändertes“ Header-Feld aus der ursprünglichen Antwort während des Ersetzens, um das Zwischenspeichern der Antwort zu erleichtern.
Standardmäßig wird das Header-Feld entfernt, wenn der Inhalt der Antwort während der Verarbeitung geändert wird.
Syntax:
sub_filter_once on | off;
Konfigurationsabschnitt: http, Server, Standort
Einmalige oder mehrfache Zeichenfolgenersetzung, die Standardersetzung ist einmal. Wenn Sie beispielsweise jb51 im Antwortinhalt durch diese Site ersetzen möchten, wird nur das erste angezeigt, wenn mehrere jb51 angezeigt werden Wenn diese Option deaktiviert ist, werden alle jb51 ersetzt. Syntax:
sub_filter_types mime-type ...;
server { listen 80; server_name www.jb51.net; root /data/site/www.jb51.net; location / { sub_filter jb51 '本站'; sub_filter_types text/html; sub_filter_once on; } }
# cat /data/site/www.jb51.net/2013/10/20131001_sub1.html
welcome to jb51! jb51 team!
# curl www.jb51.net/2013/10/20131001_sub1.html
welcome to 本站! jb51 team!
location / { sub_filter jb51 '本站'; sub_filter_once off; }
# curl www.jb51.net/2013/10/20131001_sub1.html
welcome to 本站! 本站 team!
location / { sub_filter </head> '</head><script language="javascript" src="$script"></script>'; sub_filter_once on; }
Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie Nginx zum Aufzeichnen und Analysieren langsamer Antwortanforderungen und zum Ersetzen von Website-Antwortinhalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!