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

(Comments)

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

Currently unrated

Comments

Recent Tweets

  • ytyng

    ytyng @ytyng

    在宅で仕事してるので古い曲をけっこう聞いてる。久々にコーガニズムオーケストラ聞いたらめっちゃかっこいい。昔対バンして間近で見て強烈に心を持ってかれたことを思い出した。新潟古町のJunkBox。またミクスチャーやりたいわ。
    2 weeks ago

  • ytyng

    ytyng @ytyng

    slack 503
    2 weeks, 4 days ago

  • ytyng

    ytyng @ytyng

    11:40 頃解消された。
    1 month, 2 weeks ago