Ich habe die berühmte Nginx-Fehlereinstellungsmethode bei der Entwicklung eines WEB-Servers untersucht und sie daher zusammengefasst. nginx kann einen statischen Fehler an den Benutzer zurückgeben, wenn ein Fehler auftritt. So machen Sie den Fehler original.
apt install nginx
Einfach installieren mit.
Normalerweise wird der Fehler von Python gesteuert, aber Nginx kann den Fehler aufgrund eines Timeouts oder dergleichen zurückgeben. Zu diesem Zeitpunkt ist standardmäßig das Nginx-Zeichen in der Fehlerformulierung enthalten, was zu einem Sicherheitsproblem führen oder die Einheitlichkeit des gesamten Systems beeinträchtigen kann. Daher möchten Sie möglicherweise den ursprünglichen Fehler zurückgeben. Dies ist möglich, indem der Serverkontext in `/ etc / nginx / nginx.conf``` oder
/ etc / nginx / conf.d / xxx.conf``` geändert wird.
Wenn Sie die ursprüngliche HTML- oder JSON-Datei an den Benutzer zurückgeben, legen Sie die ursprünglichen Dateieinstellungen sowie den http-Status und die ursprüngliche Dateizuordnung im Serverkontext fest.
Das Format der Einstellungen in der Originaldatei sieht folgendermaßen aus.
location = /Name einstellen(Dateiname) {
root Der Pfad, in dem das ursprüngliche HTML gespeichert ist
}
Das Format für die Zuordnung des http-Status zum ursprünglichen HTML-Code lautet wie folgt.
error_Seite http Status/Name einstellen(Dateiname);
Die ganze conf-Datei sieht so aus. Wenn nginx 500, 502, 503, 504 zurückgibt, wird /flask/nginx/50x.html an den Benutzer zurückgegeben.
sample.conf
server {
listen 8010;
server_name original;
limit_conn servers 2;
location / {
include uwsgi_params;
uwsgi_pass unix:///tmp/uwsgi.sock;
}
#http Status und 50x.Verknüpfen Sie die HTML-Einstellungen
error_page 500 502 503 504 /50x.html;
# 50x.HTML-Einstellungen
location = /50x.html {
#Pfad, in dem HTML gespeichert ist
root /flask/nginx;
}
}
In dem oben genannten Fall wird der http-Status an den Benutzer zurückgegeben, sobald er aufgetreten ist. In einigen Fällen möchten Sie jedoch möglicherweise auch den Status angeben. Dies kann durch Ändern der Verknüpfungseinstellungen erreicht werden. Achten Sie in diesem Fall darauf, kein Leerzeichen zwischen = und http zu setzen.
Das Format zum Zuordnen des http-Status zur Originaldatei lautet wie folgt.
error_Seite http Status=HTTP-Status, den Sie zurückgeben möchten/Name einstellen(Dateiname);
Die ganze conf-Datei sieht so aus. Wenn nginx 500, 502, 503, 504, http-Status 500 zurückgibt, wird /flask/nginx/50x.html an den Benutzer zurückgegeben.
sample.conf
server {
listen 8010;
server_name original;
limit_conn servers 2;
location / {
include uwsgi_params;
uwsgi_pass unix:///tmp/uwsgi.sock;
}
#http-Status und Rückgabestatus, 50x.Verknüpfen Sie die HTML-Einstellungen
error_page 500 502 503 504 =500 /50x.html;
# 50x.HTML-Einstellungen
location = /50x.html {
#Pfad, in dem HTML gespeichert ist
root /flask/nginx;
}
}
Sie können den Rückgabewert auch in eine einfache Text- oder Conf-Datei anstelle einer Datei einfügen. Verknüpfen Sie in diesem Fall die ursprüngliche Einstellung mit dem http-Status und der Einstellung im Serverkontext.
Das Format der Fehlereinstellung ist wie folgt.
location = /Name einstellen{
Nachricht zurückgeben, um zurückzukehren;
}
Das Format zum Verknüpfen des http-Status und der Einstellungen lautet wie folgt.
error_Seite http Status/Name einstellen;
Die ganze conf-Datei sieht so aus. Wenn nginx nun 500, 502, 503, 504 zurückgibt, wird ein "ursprünglicher Fehler" an den Benutzer zurückgegeben.
sample.conf
server {
listen 8010;
server_name original;
limit_conn servers 2;
location / {
include uwsgi_params;
uwsgi_pass unix:///tmp/uwsgi.sock;
}
#Verknüpfen Sie den http-Status mit 50x-Einstellungen
error_page 500 502 503 504 /50x;
#50x Einstellung
location = /50x {
#Nachricht zur Rückkehr
return "Ursprünglicher Fehler";
}
}
In dem oben genannten Fall wird der http-Status an den Benutzer zurückgegeben, sobald er aufgetreten ist. In einigen Fällen möchten Sie jedoch möglicherweise auch den Status angeben. Dies kann durch Ändern der Fehlereinstellungen erreicht werden.
Das Format der Fehlereinstellung ist wie folgt.
location = /Name einstellen{
Rückgabe des http-Status zur Rückgabe der Nachricht zur Rückgabe;
}
Die ganze conf-Datei sieht so aus. Wenn nginx nun 500, 502, 503, 504, http-Status 500 zurückgibt, wird "ursprünglicher Fehler" an den Benutzer zurückgegeben.
sample.conf
server {
listen 8010;
server_name original;
limit_conn servers 2;
location / {
include uwsgi_params;
uwsgi_pass unix:///tmp/uwsgi.sock;
}
#Verknüpfen Sie den http-Status mit 50x-Einstellungen
error_page 500 502 503 504 /50x;
#50x Einstellung
location = /50x {
#Nachricht zur Rückkehr
return 500 "Ursprünglicher Fehler";
}
}
Wir haben zusammengefasst, wie Fehler mit nginx kontrolliert werden können. Da Nginx verschiedene Funktionen hat, gibt es meiner Meinung nach viele Möglichkeiten, einen Fehler zurückzugeben. In diesem Fall ist es einfacher zu sehen und zu kühlen, wenn Sie das Fehlerformat vereinheitlichen. Daher dachte ich, es wäre besser, sich daran zu halten.
Recommended Posts