次のエラーが発生し続けます
指定された URL は、アプリケーションの構成で許可されていません。: 指定された URL の 1 つ以上が、アプリの設定で許可されていません。ウェブサイトの URL またはキャンバスの URL と一致するか、ドメインがアプリのドメインのいずれかのサブドメインである必要があります。
PHP コード スニペットを使用してユーザーをログインしようとすると (以下を参照)。私のFacebookの設定は次のとおりです。
App Domains: myappname-mynamespace.rhcloud.com www.myappname-mynamespace.rhcloud.com
Site URL: http://myappname-mynamespace.rhcloud.com/
Canvas Page: http://apps.facebook.com/myappname
Canvas URL: http://myappname-mynamespace.rhcloud.com/
Secure Canvas URL: https://myappname-mynamespace.rhcloud.com/
ここ、ここ、ここ、ここ、ここで同様の質問を読みましたが、すべて同じことを言っているようです: 私のサイト URL (Facebook ログインの Web サイト) が正しくありません。
しかし、私のOpenshift URLはこのようなものです
http://myappname-mynamespace.rhcloud.com
それを Facebook サイトの URL フィールドに入力しました。Openshiftギアindex.php
のルートに次の PHP コード ( ) があります。
<?php
require 'php-sdk/facebook.php';
$facebook = new Facebook(array(
'appId' => 'xxxx',
'secret' => 'xxxx'
));
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Facebook PHP</title>
</head>
<body>
<h1>Hello World!</h1>
<?php
// get user from facebook object
$user = $facebook->getUser();
if ($user): // check for existing user id
echo '<p>User ID: ', $user, '</p>';
else: // user doesn't exist
$loginUrl = $facebook->getLoginUrl(array(
'display' => 'popup',
'redirect_uri' => 'http://apps.facebook.com/myappname'
));
echo '<p><a href="', $loginUrl, '" target="_top">login</a></p>';
endif;
?>
</body>
</html>
私は何を間違っていますか?
Facebook アプリの URL ( http://apps.facebook.com/myappname
)を入力するHello World!
と、ログイン リンクが Facebook アプリの iframe の上に表示されます。ただし、ログインリンクをクリックすると、上記のエラーが発生します。どんな支援も大歓迎です!
編集
ブラウザに次の URL を入力するHello World
と、ログイン リンクが両方とも表示されました。
http://myappname-mydomainname.rhcloud.com/
https://myappname-mydomainname.rhcloud.com/