Django Social Auth の Django モジュールや AllAuth のリダイレクト先プロトコルスキームが HTTPS ではなく HTTP になって困った
(callback_uri, redirect_uri, destination)
URI の作成は、django.http.request.HttpRequest.build_absolute_uri
が使われるので、
settings に
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
を定義する。
nginx が httpsを受けている場合は、nginx の設定は
location / {
proxy_set_header X-Forwarded-Proto $scheme;
...
こんな感じ、
nginxが https ではなく http で受けている場合、例えば ELBなんかで https を展開している場合は
location / {
proxy_set_header X-Forwarded-Proto https;
...
https のヘッダーを直接渡せばいいかな
コメント