我的目标是从端口 80 重定向到 443(强制 https),但无法首先获得有效的 https 配置。我收到 503 服务器错误,日志中没有任何内容。我查看了 SO 和 SF 上的所有帖子,但没有一个有效(X_FORWARDED_PROTO、X-Forwarded-For 标头没有区别。)。我在负载均衡器后面的 EC2 上,因此我不需要使用与 SSL 相关的指令,因为我已经在 ELB 上配置了我的证书。我正在使用 Tornado 作为 Web 服务器。
这是配置,如果有人有想法,谢谢!
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;
}
}
}