
Debian: 12 Nginx: 1.22.1
ゴール
Nginxに各サーバーへのリクエストをラウンドロビン方式でルーティングさせる
何が起こっている
Nginxは、何があっても最初のサーバーにのみリクエストをルーティングします。
期待される動作とは
Nginx は各リクエストをリスト内の次のサーバーにルーティングするはずです。おそらく nginx 自体にバグがあるのではないかと推測するしかありません。
何を試しましたか
リスト内のすべてのサーバーを異なる順序で並べ替えましたが、常に最初のサーバーに移動します。また、アップストリームにディレクティブを追加しようとしましたleast_conn
が、効果はありませんでした。
これが私の設定ファイルです注: URLのすべてのインスタンスをXに置き換えました
upstream backend {
least_conn;
server x:443;
server x:443;
server x:443;
}
server {
listen 443 ssl;
server_name x;
ssl_certificate /etc/letsencrypt/live/x/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/x/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
location / {
proxy_pass https://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass_request_headers on;
proxy_pass_request_body on;
proxy_ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
}
}