Python Social Auth Django とか AllAuth でリダイレクト先のURL が HTTPS でなく HTTP で困った

投稿者: ytyng 5年, 9ヶ月 前

Django Social Auth の Django モジュールや AllAuth のリダイレクト先プロトコルスキームが HTTPS ではなく HTTP になって困った
(callback_uri, redirect_uri, destination)

Django の設定

URI の作成は、django.http.request.HttpRequest.build_absolute_uri が使われるので、

settings に

SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')

を定義する。

nginx の設定

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 のヘッダーを直接渡せばいいかな

現在未評価

コメント

アーカイブ

2024
2023
2022
2021
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011