私はこのnginxサーバーをAWSで実行していて、最近まで何人かのユーザーがWebサイトにアクセスしようとするまでに10回程度試行するまでWebサイトが開かないことについて不平を言うまで、問題なく動作していました。
私は自分の側から問題を再現することができませんでした。私はgoogleのDNS、つまり8.8.8.8を使用しています。ユーザーの1人に対して同じDNSを変更すると、サイトは正常に機能していました。これが原因である場合もあれば、偶然の一致である場合もあります。
これはエラーログで見つかりました-
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
そしてこれさえある場所-
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
注-クライアントのIPにxx.xxx.xxx.xxを配置しました
ここにnginxの設定があります-
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 ...
}
私は本当に助けていただければ幸いです。
ありがとう
Nginxから提供されたログに基づいて、サーバーとユーザー間の接続が不安定または遅いようです。サーバーからクライアントのIPアドレスまたはゲートウェイにtraceroute
を試してください。また、ping
長い間クライアントのIPアドレスを確認して、パケット損失率と応答時間を確認します。 MTUがこの問題の別の原因である可能性があります。 MTU = 1500でクライアントに到達できるかどうかをテストします(Mac:ping -D -s 1472 xx.xx.xx.xx
)。
ところで:あなたのサーバーまたはクライアントが中国にある場合、この問題は通常あなたのせいではありません。 GFWは、意図的に国際接続の品質を低下させるために、境界間のパケットをランダムに破棄することが知られています。
これらのログエントリは、OpenVASなどのツールを使用してサーバーをスキャンしたときに表示されるエントリに似ています。これらのツールは、接続不良、速度の低下、またはその他の理由で動作不良を引き起こします。 nginxは、一部の接続がうまくいかなかったと報告しています。すべてのトラフィックが同じソースからのものであり、高速で、アクセスログで一致する他の正当なリクエストがない場合、それはおそらくボットスキャナーのようなものです。
これらのスキャナーは、アプリケーションに負荷をかけ、他の正当なトラフィックの速度を低下させる可能性もあります。
そのコメントで推測されているように、それはおそらくユーザーエラーであり、(意図的かどうかにかかわらず)接続を閉じています。問題を確実に再現するようにしてください。それが他の場所で起こっていることを排除し、それがその場所だけである場合、彼らは彼らの側でトラブルシューティングする必要があります。別のブラウザー/コンピューターから試し、ネットワークの信頼性をテストします。