私はnginxを使用するdockerの弾力のあるbeanstalkでホストされているdjangoアプリケーションを持っています。 SSLの場合私はaws証明書を使用しています。 httpをhttpsにリダイレクトするには、ドッカーコンテナ内にtrhe nginxを入れて "x_forwarded_proto"を試しましたが、502エラーが表示されます。ここにはnginxの設定があります:nginxのdockerの弾力のあるbeanstalkのhttpをhttpsにリダイレクトする方法
server {
listen 80 default_server;
server_name www.example.com;
access_log /home/docker/logs/nginx-access.log;
error_log /home/docker/logs/nginx-error.log;
if ($host !~* ^(www.example.com|example.com)$) {
return 444;
}
if ($http_x_forwarded_proto != 'https') {
return 301 https://$host$request_uri;
}
location/{
uwsgi_pass unix:/var/sockets/api.sock;
include /home/docker/server/uwsgi_params; #
}
}
誰かがそれに対してより良い解決策を提案できますか?
通常、httpをhttpsにリダイレクトするためにこれを使用できます。しかし、私はAWS Certificate ManagerからSSL証明書を使用しています。だから私はエラーを引き起こすnignxの設定でssl証明書の場所を定義することはできません。私はこのブログに続いた https://www.uvd.co.uk/blog/using-aws-certificate-manager-nginx/ – Nijo