次の問題があります。
リバースプロキシは、内部ネットワーク内のサーバーへの安全な(https)接続を確立するために使用されます。したがって、アドレスはhttps://<url>
です。ログインページ(https://<url>/users/login)
を表示して[送信]をクリックすると、httpsが(loginRedirectによって)削除され、http経由でURLに接続しようとします。もちろん、これはタイムアウトになりますが、ユーザーはログインしています。ユーザーがページに直接アクセスしている場合は、機能しています。
ユーザーがページにアクセスすると、必要なすべてのことを実行でき、他のリンクは期待どおりにhttpsで表示されます。
loginRedirectがhttpsを削除することを回避するにはどうすればよいですか?$this->redirect('<url>');
1つの解決策は、代わりに単純に使用することです$this->redirect($this->Auth->redirect());
が、誰かがログインしておらず、認証が必要なページの特定の部分にアクセスしようとすると、直接リンクの処理が失われます。