So lösen Sie das Problem „Nginx 503-Dienst vorübergehend nicht verfügbar“

So lösen Sie das Problem „Nginx 503-Dienst vorübergehend nicht verfügbar“

In letzter Zeit tritt nach dem Aktualisieren der Website häufig der Fehler 503 Service Temporarily Unavailable auf. Manchmal funktioniert es. Ich dachte an die neue Beschränkung der Anzahl der Besuche einer einzelnen IP-Adresse in nginx.conf (limit_req_zone $binary_remote_addr zone=allips:20m rate=20r/s;). Nachdem ich diese Zahl erhöht und die Website aktualisiert hatte, stellte ich fest, dass das Problem gelöst war. (Ich habe auch dieses limit_req zone=allips burst=50 nodelay erhöht;) Um das Problem zu bestätigen, habe ich die Zahl wiederholt geändert und festgestellt, dass das Problem tatsächlich hier lag. Wenn diese Zahl zu klein eingestellt ist, tritt ein Problem auf. Durch Fiddler wird festgestellt, dass die Webseite aktualisiert werden muss, da die auf der Seite referenzierten JS, CSS und Bilder alle als eine Verbindung gezählt werden. Daher kann das Aktualisieren einer einzelnen Seite diese Grenze überschreiten. Wenn diese Grenze überschritten wird, wird die Meldung „503 Service vorübergehend nicht verfügbar“ angezeigt.

nginx.conf anhängen

#Benutzer niemand;
Arbeiterprozesse 1;
#worker_rlimit_nofile 100000; 
#error_log Protokolle/Fehler.log;
#error_log Protokolle/error.log Hinweis;
#error_log Protokolle/error.log-Info;
 
#pid-Protokolle/nginx.pid;
 
Ereignisse {
  Arbeiterverbindungen 1024;
}
 
http {
  mime.types einschließen;
  Standardtyp Anwendung/Oktett-Stream;
 
##Zwischenspeicher##
 Proxy_Verbindungstimeout 5;
 Proxy_Lese_Timeout 60;
 Proxy_Sendezeitüberschreitung 5;
 Proxy-Puffergröße 16k;
 Proxy-Puffer 4 64k;
 Proxy_Busy_Buffer_Größe 128k;
 Proxy_Temp_File_Schreibgröße 128k;
 Proxy_temp_Pfad /home/temp_Dir;
 Proxy-Cache-Pfad /usr/local/nginx/cache Ebenen = 1:2 Schlüsselzone = Cache_eine: 200 m inaktiv = 1 d max. Größe = 30 g;
 ##Ende##
#Limit pro IP pro Sekunde Zugriffszeiten 10 
limit_req_zone $binary_remote_addr Zone=allips:20m Rate=20r/s;
 
  #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 Protokolle/access.log Haupt;
 
  sendfile an;
  #tcp_nopush ein;
 
  #keepalive_timeout 0;
  KeepAlive-Timeout 65;
 
  #gzip ein;
upstream myweb80{
  ip_hash;
  Server 192.168.3.105:80;
  Server 192.168.3.103:80;
}
 
upstream myweb8080{
  ip_hash;
  Server 192.168.3.222:10080;
  #Server 192.168.3.103:8080;
 } 
upstream myweb10086{
  ip_hash;
  Server 192.168.3.102:10086;
  Server 192.168.3.108:10086;
 } 
upstream myweb443{
  ip_hash;
  Server 192.168.3.105:443;
  Server 192.168.3.103:443;
 } 
 
  # ein weiterer virtueller Host mit einer Mischung aus IP-, Namens- und Port-basierter Konfiguration
  #
  Server {
    hören Sie 80;
    erlauben Sie 218.17.158.2;
erlaube 127.0.0.0/24;
erlaube 192.168.0.0/16;
erlauben Sie 58.251.130.1;
erlauben Sie 183.239.167.3;
erlauben Sie 61.145.164.1;
alles leugnen;
Servername myweb.com;
    Standort / {
        Proxy-Passwort http://myweb80;
Proxy_Set_Header X-Real-IP $Remote_Addr;
limit_req Zone=Allips Burst=50 Knotenanzahl;  
    }
  }
 
  Server {
    hören Sie 8080;
erlauben Sie 218.17.158.2;
erlaube 127.0.0.0/24;
erlaube 192.168.0.0/16;
erlauben Sie 58.251.130.1;
erlauben Sie 183.239.167.3;
erlauben Sie 61.145.164.1;
alles leugnen;
    Standort / {
        Proxy-Passwort http://myweb8080;
Proxy_Set_Header X-Real-IP $Remote_Addr;
limit_req Zone=Allips Burst=50 Knotenanzahl;  
    }
  }
 
# HTTPS-Server
  #
  Server {
    hören Sie 10086 SSL;
    Servername localhost;
erlauben Sie 218.17.158.2;
erlaube 127.0.0.0/24;
erlaube 192.168.0.0/16;
erlauben Sie 58.251.130.1;
erlauben Sie 183.239.167.3;
erlauben Sie 61.145.164.1;
#alles ablehnen;
    SSL-Zertifikat ssl/1_www.myweb.com_bundle.crt;
    SSL-Zertifikatsschlüssel ssl/2_www.myweb.com.key;
 
  # ssl_session_cache geteilt:SSL:1m;
  #ssl_session_timeout 5m;
 
  # ssl_ciphers HOCH:!aNULL:!MD5;
  # ssl_prefer_server_ciphers ein;
 
    Standort / { 
   Proxy-Passwort https://myweb10086; 
   #roft.html; 
   #index index.html index.htm; 
    } 
  }
 
  Server{ 
    hören Sie 443 SSL; 
    Servername localhost;
 
    SSL-Zertifikat ssl/1_www.myweb.com_bundle.crt; 
    SSL-Zertifikatsschlüssel ssl/2_www.myweb.com.key;
 
  #ssl_session_cache geteilt:ssl:1m; 
  #ssl_session_timeout 5m;
 
  #ssl_ciphers HOCH: ! aNULL:! MD5; 
  #ssl_prefer_server_ciphers ein;
 
    Standort / { 
   Proxy-Passwort https://myweb443; 
   #roft.html; 
   #roft.html; 
   #index index.html index.htm; 
    } 
  } 
}

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Lösung für das 404/503-Problem beim Anmelden bei TeamCenter12
  • SVN-Fehler: Fehler beim Aktualisieren der Änderungen: svn: E155037-Lösung
  • So beheben Sie die Fehler 2503 und 2502 bei der Installation von Node.js unter Windows
  • Lösung für 503-Fehler beim Bereitstellen eines Python-Programms in Apache
  • Analysieren der allgemeinen Serverfehlercodes 500, 501, 502, 503, 504, 505
  • Server-Fehlercode 500 501 502 503 504 505 Detaillierte Erklärung
  • Was ist der Fehler 503 „Service vorübergehend nicht verfügbar“?
  • 503 Dienst nicht verfügbar Fehlerlösungserklärung

<<:  Schritte zur Vue-Batch-Update-DOM-Implementierung

>>:  Grafische Analyse des Speicherorts der MySQL5.7-Konfigurationsdatei in der Windows-Umgebung

Artikel empfehlen

Implementierung der Multi-Port-Zuordnung des Nginx-Reverse-Proxys

Code Erklärung 1.1 http:www.baidu.test.com verwen...

Lösung für die nicht angezeigte IP-Adresse unter Linux

Inhaltsverzeichnis Vorwort Lösung: Schritt 1 Schr...

Zusammenfassung der Methoden zur Änderung des Git-Commit-Protokolls

Fall 1: Letzte Übermittlung und kein Push Führen ...

JavaScript zum Implementieren des Slider-Verifizierungscodes

In diesem Artikel wird der spezifische JavaScript...

Der Unterschied zwischen method=post/get in Form

Das Formular bietet zwei Möglichkeiten zur Datenüb...

InnoDB-Typ MySql stellt Tabellenstruktur und Daten wieder her

Voraussetzung: Speichern Sie die .frm- und .ibd-D...

Detaillierte Erläuterung der CSS-Randüberlappung und Lösungssuche

Ich habe kürzlich einige CSS-bezogene Wissenspunk...

MySQL-Schnellwiederherstellungslösung basierend auf dem Zeitpunkt

Der Grund für das Schreiben dieses Artikels ist, ...

Tutorial zur Verwendung von $attrs und $listeners in Vue

Inhaltsverzeichnis einführen Beispiel Zusammenfas...

Vue-cli erstellt ein Projekt und analysiert die Projektstruktur

Inhaltsverzeichnis 1. Geben Sie ein Verzeichnis e...