uwsgi のスニペットの 1 つに従って、hsts を有効にしようとしました。これが私の現在の構成です:
[uwsgi]
http-socket = :$(PORT)
master = true
processes = 4
die-on-term = true
module = webapp:app
memory-report = true
check-static = %v/webapp/static/
route= ^/?$ static:%v/webapp/static/pages/index.html
route-host = ^localhost:(?:[0-9]+)$ last:
route-if-not = equal:${HTTPS};on redirect-permanent:https://${HTTP_HOST}${REQUEST_URI}
route-if = equal:${HTTPS};on addheader:Strict-Transport-Security: max-age=31536000
route = .* last:
私がやろうとしているのは、localhost 以外のすべてに hsts を適用することです。サイトは localhost で動作しますが、heroku では、ホームページへのリクエストはまったくリダイレクトされず、静的アセットへのリクエストは無限ループに入り、https リクエストでさえリダイレクトされます。
編集
問題は、Heroku のロード バランサーが dyno に安全に接続されていないことです。X-Forwarded-Proto
ヘッダーに基づいてルーティングする方法、またはプロトコルを含む完全なリクエスト URL に基づいてルーティングする方法はあり^https:
ますか?