CakePHP3でHTTPSにする 表題の件ですが、以前も同じような記事を書いています。 ELBで80番ポートアクセスをしていたのですべてのアクセスを443番ポートにアクセスさせる しかし、基本的にHTTPアクセスしていたものをHTTPSでリダイレクトさせているだけです。 以前対応した時は、AWSのELB(Elastic Load Balancing)で80番ポートも443番ポートも解放していたので、80番でアクセスしてきたものを443番でリダイレクトして解決させたのです。 がしかし、今回この構成をベースに新たなサービスの開発をする際にハマりました。。 環境自体は私が構築しないので、サーバー管理に依頼して出来上がってきた時に一言添えられていました。 【HTTPアクセスは推奨しないのでHTTPSしか許可していない構成です】 まあ、HTTPSなんて当たり前だから気にもせずコードをGITからcloneして配置 アクセスしてみると、以前と同じようにHTTPSからHTTPに切り替わる と言うことでhttpd.conf(正確にはvirtualhost.confですが)に以前やった対応を記載してgracefulをしてみると、ログインフォームからログイン時にログイン成功しているけれどもTOPページが表示されず、、、 どうやらリダイレクトしているっぽい、、、 TOPページのURLを直打ちすればログインしている状態で表示されます。 その状態で、ログアウトするとまたログインページが表示されずにグルグルとアクセスしようとしている感じがありますがページは表示されません。 少し調べると、なんとなくわかりました。 発生している場所は、CakePHPでリダイレクトしている箇所です。 その時点で気付きました。。 今回はELBは443ポートしか解放されていません。 リンクやFORMは相対パスなので現在アクセスされているプロトコルで遷移していきます。つまりはTOPから設定メニューのリンクはHTTPSでアクセスしていればHTTPSで遷移していきます。 しかしリダイレクトはリダイレクトURLを生成して転送をかけるので、ここでどうやらHTTPでURLを生成してリダイレクトし...