概要

以下の記事で紹介したDocker + Traefikを用いて、HTTPS化したDrupalを運用していました。

この時、Drupalのデフォルト設定の場合、以下のように、httpのURLが設定されていました。

この問題として、以下の記事になるように、例えばGoogleアカウントでログインするようにした際、リダイレクトURLがhttpから始まるURLとなり、Google Cloud コンソールにはhttpsから始まるURLを入力する必要があり、この齟齬によって、認証ができないケースなどがありました。

https://drupalfan.com/【drupal】googleアカウントでログインできるようにする/

本記事では、この問題に対処するための方法についてメモします。

方法

以下の記事が参考になりました。

https://www.58bits.com/blog/canonical-urls-https-and-drupal-89-reverse-proxy-settings

以下の3行を追加することで、Drupalの内部的にもhttpsから始まるURLに設定されました。

$$$ssseeettttttiiinnngggsss[[['''rrreeevvveeerrrssseee___ppprrroooxxxyyy'__]atdr=dursTetRseUsdEe_;sh'e]ad=erasr'r]ay=($\_SSyEmRfVoEnRy[\'CRoEmMpOoTnEe_nAtD\DHRt't]p)F;oundation\Request::HEADER_X_FORWARDED_FOR|\Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PROTO|\Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_PORT;

まとめ

考慮不足の点があるかもしれませんが、参考になりましたら幸いです。