1

我已经为客户端编写了一个 Facebook 应用程序,它在我自己的运行 PHP5.2 的服务器上运行良好。在客户端服务器上安装时,我们发现它运行的是 PHP5.1.6 所以没有 json_de/encode 库。

客户端被他们的服务器供应商阻止升级到 PHP5.2,并且考虑到他们网站的黑客和状态(古老的被黑死的 Joomla v1.0)可能有风险。

环顾四周,我发现了 upgradephp(我用过的 v1.7)。它同时提供 json_encode 和 decode

我遇到的问题是代码处于永久循环中,试图获取 Facebook 用户 ID:

$options = array("scope" => "user_birthday",
                 "redirect_uri" => "https://apps.facebook.com/".$nameSpace."/");
$loginUrl = $facebook->getLoginUrl($options);
// Get User ID
$user = $facebook->getUser();
if (!$user) {
    // Require user to authenticate the app
    echo '<script>top.location.href = "' . $loginUrl . '"</script>';
}

这段代码在我自己的服务器上运行良好,只是在客户端上运行良好。所以我想知道从哪里开始调试以及如何开始调试?任何建议都非常感谢!

4

1 回答 1

0

答案只是我为之工作的客户端导致的 Facebook 应用程序面板中的配置问题。他们错误地输入了自己的网站 URL,省略了前面的“www”。当应用程序运行时,它试图转到没有 www 的域名并被重定向到 www.domainname。不仅如此,而且在重定向中为 http 删除了 https。这导致了重定向的无限循环,因为 facebook 不允许非 https 请求。

于 2013-01-17T14:24:14.470 回答