Ich habe diesen Nginx-Server unter AWS und er funktionierte bis vor kurzem einwandfrei, als sich einige Benutzer beschwerten, dass die Website erst nach 10 Zugriffsversuchen geöffnet wird.
Ich war nie in der Lage, das Problem von meiner Seite zu rügen. Ich benutze Google DNS, dh 8.8.8.8 & als ich das gleiche für einen der Benutzer änderte, funktionierte die Site gut. Dies kann nun der Grund sein oder auch nur ein Zufall.
Ich habe das im Fehlerprotokoll gefunden -
2014/05/29 13:46:15 [info] 6940#0: *150649 client timed out (110: Connection timed out) while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
2014/05/29 13:46:20 [info] 6940#0: *150670 client closed connection while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
2014/05/29 13:46:20 [info] 6940#0: *150653 client closed connection while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
2014/05/29 13:46:20 [info] 6940#0: *150652 client closed connection while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
Und an einigen Orten sogar das -
2014/05/29 13:46:53 [info] 6940#0: *150665 client closed connection while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
2014/05/29 13:46:53 [info] 6940#0: *150660 client xx.xxx.xxx.xx closed keepalive connection
Hinweis: Haben Sie xx.xxx.xxx.xx für die Client-IP platziert
Hier ist die Nginx-Konfiguration -
server {
listen 80;
server_name somedomain.com www.somedomain.com;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
root /var/www/somedomain/current/app/webroot;
index index.php index.html index.htm;
... couple of location rules ...
}
Ich würde mich über jede Hilfe sehr freuen.
Vielen Dank
Antworten:
Basierend auf dem Protokoll, das Sie von Nginx bereitgestellt haben, scheinen die Verbindungen zwischen Ihrem Server und den Benutzern instabil oder langsam zu sein. Bitte versuchen Sie es
traceroute
mit Ihrer Client-IP-Adresse oder seinem Gateway von Ihrem Server. Außerdem mussping
Ihre Client-IP-Adresse lange Zeit die Paketverlustrate und die Antwortzeit anzeigen. Die MTU könnte eine weitere Ursache für dieses Problem sein. Testen Sie, ob Sie Ihren Kunden mit MTU = 1500 (Mac:) erreichen könnenping -D -s 1472 xx.xx.xx.xx
.Übrigens: Wenn sich Ihr Server oder Client in China befindet, ist dieses Problem normalerweise nicht Ihre Schuld. Es ist bekannt, dass GFW willkürlich Pakete zwischen Rändern verwirft, um die internationale Verbindungsqualität absichtlich zu verschlechtern.
quelle
Wie in diesem Kommentar spekuliert, handelt es sich wahrscheinlich um einen Benutzerfehler, und die Verbindung wird geschlossen (absichtlich oder nicht). Versuchen Sie, das Problem zuverlässig zu reproduzieren. Schließen Sie es aus, wenn es anderswo passiert, und wenn es nur dieser Ort ist, müssen sie an ihrem Ende Fehler beheben. Versuchen Sie es mit verschiedenen Browsern / Computern und testen Sie dann die Netzwerkzuverlässigkeit.
quelle
Diese Protokolleinträge ähneln Einträgen, die angezeigt werden, wenn ich Tools wie OpenVAS zum Scannen eines Servers verwende. Diese Werkzeuge stellen schlechte Verbindungen her, werden langsam oder arbeiten auf andere Weise schlecht. nginx meldet nur, dass eine Verbindung nicht gut funktioniert hat. Wenn der gesamte Datenverkehr aus derselben Quelle stammt, schnell ist und keine anderen legitimen Anforderungen für den Abgleich im Zugriffsprotokoll vorliegen, ist dies wahrscheinlich nur eine Art Bot-Scanner.
Diese Scanner könnten Ihre Anwendung auch unter Last setzen, was sie für anderen legitimen Datenverkehr verlangsamen könnte.
quelle