ログインシステムを作成しているときに、Facebookでユーザーを承認するときに小さな問題が発生しました...
誰かが[Facebookでログイン]ボタンをクリックしてアプリにサインイン/承認すると、Facebookは$_GET
通常どおり、一連の変数を使用して私のサイトにリダイレクトします。唯一の問題は、Facebookログインのステータスを確認するために、これらの変数の1つが設定されているかどうかを確認したいということです。
varをプルしようとすると$_GET
、「存在しない」と表示されます。問題は、mod_rewriteを使用してURLの出現をクリーンアップすることにあります。
#RewriteRule ^([A-Za-z0-9]+)/?$ ?a=b&content=$1 [L]
#RewriteRule ^([A-Za-z0-9]+)/([A-Za-z0-9]+)/?$ ?a=b&content=$1&page=$2 [L]
これは次www.mysite.com?content=login&page=2
のようになります:www.mysite.com/login/2
したがって、私のURLはwww.mysite.com/content?state=[...]&code=[...]&...etc
、Facebookが割り当てる変数と、書き換えられる変数を混同している必要があります$_GET
。
コンテンツとページセットの両方を含むURLでも同じことが起こります。例えば:
www.mysite.com/content/page?state=......
これを解決する最良の方法は何でしょうか?確認済みのFacebookログインを表示する別の方法を見つけることができることは知っていますが、これは今後も他の状況で問題になると確信しています。
前もって感謝します。