

現在、AWSで2台サーバーを立てて、ロードバランシングをしているのですが、facebook loginがうまく実装できません。

ログインしようとすると、

Facebook SDK returned an error: Cross-site request forgery validation failed.
Required param "state" missing.

上記のようなエラーが出てしまいます。

サーバー1台の時はうまくいっていたのですが、、

詳しい方、ご教示ください。よろしくお願い致します。


CC BY-SA 3.0
2016-08-08T06:10:47.393
28122
2016-08-16T05:44:03.357
8619
question
php aws
サーバー複数台でのlogin with facebook


OAuthでログインページへリダイレクトする際に、stateをクッキーに入れて管理していると思いますが、保存したサーバと読み出すサーバが異なると発生するかと思います。  
セッション情報を複数台のサーバで共有するか、ロードバランサで同一セッションは同一サーバに振り分けられるようにする必要があるかもしれません。


CC BY-SA 3.0
2016-08-16T05:44:03.357
28310
2016-08-16T05:44:03.357
2605
28122
answer