web-dev-qa-db-ja.com

サブドメイン上のFacebookアプリ:サイトURLとアプリドメイン

Facebookやその他のスタックオーバーフローの質問によると、サブドメインは[アプリドメイン]フィールドでサポートされていますが、[サイトURL]フィールド(FacebookログインのあるWebサイトの下)ではサポートされていません。私は、ユーザーがFacebook(js経由)からログインできるようにする、さまざまなサブドメイン(実際には http://clientname.projectname.mydomain.com などのチェーンサブドメイン)で使用するアプリを作成しています。データを取得します(jsとphpの両方を介して)。

複数のサブドメインをサポートするようにFacebookアプリをどのように設定しますか?

16
Sabrina Leggett

編集:どうやらこれはもう機能していません(以下のコメントを参照してください)

フィールドで遊んでみたところ、なぜうまくいかなかったのかが実際にわかったと思います。

元々、アプリのドメインフィールドを空白のままにして、ドメインをサイトのURLフィールド( http://example.com )に入力しようとしただけで、機能しませんでした。アプリドメインを入力せずに、サイトURLの完全なURL( http://clientname.projectname.example.com )のみが機能しました。

Mydomain.comを[AppDomain]フィールドに http://example.com と一緒にSiteURLフィールドに入力すると、サブドメインで機能しました。そして、私はアプリのドメインフィールドが冗長であると思っていました...

これは、私が作成した余分な20個のアプリを削除できることを意味すると思います:-)

32
Sabrina Leggett

私にとってうまくいったのは、App DomainsSite URLの両方をサイトベースドメイン(例:http://example.com)で設定することでした。すべてのサブドメインでログインを使用できました。

また、すべてのサブドメインが同じアプリIDを使用しているかどうかを確認してください(この間違いにより、数分間の生活が何度も盗まれました)。

8
Raphael

Oauthワイルドカードサブドメインを使用したログインは過去数年間機能していましたが、数週間前に突然停止しました。

試行錯誤の末、次のことが機能することがわかりました(現時点:2017年9月)

  • 「リダイレクトURIに厳密モードを使用する」をオンにします
  • 「有効なOAuthリダイレクトURI」フィールドを空白のままにする

これがあまり安全な設定ではないのではないかと少し心配しています:(それを処理するためのより良い方法を見つけている間、一時的な解決策として機能すると思います。

1
salonMonsters