私の目標は、ポート 80 から 443 にリダイレクトする (https を強制する) ことですが、最初に有効な https 構成を取得することができません。503 サーバー エラーが発生し、ログに何も表示されません。SO と SF に関するすべての投稿を見てきましたが、どれも機能しませんでした (X_FORWARDED_PROTO、X-Forwarded-For ヘッダーは違いはありません)。ロードバランサーの背後にある EC2 を使用しているため、ELB で証明書を既に構成しているため、SSL 関連のディレクティブを使用する必要はありません。Web サーバーに Tornado を使用しています。
これが設定です。誰かアイデアがあれば、ありがとう!
http {
# Tornado server
upstream frontends {
server 127.0.0.1:8002;
}
server {
listen 443;
client_max_body_size 50M;
root <redacted>/static;
location ^~/static/ {
root <redacted>/current;
if ($query_string) {
expires max;
}
}
location / {
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://frontends;
}
}
}