は、私が今、2日間立ち往生し、ここに私の問題ですしてきた期待通りに動作しません私は何が起こっているのか把握する責任があります。 memcached(AWS elastic cache
)によって処理されたセッションで、AWS ELB
の後ろにlaravelアプリを設定しました。時々すべてがうまくいくし、奇妙なことが起こります:Laravelアプリは
ユーザーがログインすると、アプリ内をナビゲートし、何かをしてログインページを表示します。問題は、アドレスバーから/ login
を削除し、/ homepage
に置き換えたときに、いくつか試行した後です。ログインしなくてもアクセスできないホームページが表示されます。これは、ユーザーがログアウトしていないことと、何かが正しく設定されていないことを示しています。
これを調べると、私が公式化できる最良の説明です: Laravel
には、認証に関連するタスクを処理するCatalyst/Sentryパッケージがあります。ユーザーがログインすると、そのIP(この場合はELB'ip
)が保存され、elb's
のIPが変更されているため、ELB
のIP変更が発生した後にユーザーがリンクをクリックすると、アプリケーションはその要求を無効私は大声で考えています)、ユーザーにログインページを表示します。
これは一般的な問題ですか?もしそうなら、どうすればこの問題を解決できますか?
ご迷惑をおかけして申し訳ありません。どうもありがとうございました。
未知の - おそらく*間違った*、または少なくとも準最適な解決策は[スティッキセッション]を有効にします(http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-sticky-実際に見つけて修正するまで、おそらく問題を隠すでしょう。 ELBは 'X-Forwarded-For'ヘッダーをクライアントIPに設定していますので、あなたの理論が正しいとすれば解決策があるはずですが、Laravelは私の専門知識の範囲外です。私はあなたがこれに遭遇した最初の人ではないと思うし、おそらくもっと正しい解決策があるだろう。 –