nginxで長時間接続を有効にする方法は何ですか。
Nginxで長時間接続を有効にするには、次の手順を実行する必要があります。
- Nginxの設定ファイルでkeepaliveパラメータを設定すると、長時間接続を有効にすることができます。このパラメータは、接続がアイドル状態で開いている時間を定義します。
- http {
…
keepalive_timeout 65;
…
}http {
…
keepalive_timeout 65;
…
} - 設定されたら、クライアントとNginxサーバーの間の接続は、アイドル状態で65秒間開かれたままになります。
- Nginxがリバースプロキシサーバーとして機能する場合、proxyモジュールのkeepaliveパラメーターを設定すると、proxy_http_versionやproxy_set_headerパラメーターを設定して、長時間接続を有効にする必要があります。
- http {
…
proxy_http_version 1.1;
proxy_set_header Connection “”;
…
} を追加してください。 - NginxはHTTP/1.1プロトコルを使用し、プロキシリクエストにConnectionヘッダ情報を追加せず、長期接続を許可します。
- upstreamモジュールのkeepaliveパラメーターを設定する:Nginxがupstreamモジュールを使用してリクエストを負荷分散する場合、upstreamブロック内でkeepaliveパラメーターを設定する必要があります。これにより、長期接続が有効になります。
- http {
…
upstream backend {
server backend1.example.com;
server backend2.example.com;
keepalive 64;
}
…
}http {
…
upstream backend {
server backend1.example.com;
server backend2.example.com;
keepalive 64;
}
…
} - この設定により、Nginxはバックエンドサーバーとの接続で64個のアイドル接続を維持します。
Nginxの長い接続を有効にするときには、バックエンドサーバーも長い接続をサポートしていることを確認する必要があります。