我正在为 Facebook 使用PHP-SDK,并让该示例在我的本地主机上运行。但是,当在服务器上构建脚本时,脚本一直忙于从我的脚本重定向到 facebook 并返回。(错误:Fout 310 (net::ERR_TOO_MANY_REDIRECTS):)
似乎更多的人遇到了这个问题(这里,这里,这里,这里)。虽然,我找不到明确的答案是什么问题。
重定向到 facebook(响应 302):
https://www.facebook.com/dialog/oauth?client_id=166958180001271&redirect_uri=http%3A%2F%2Fdomain.com%2Fscripts%2FGateway.php%3Faction%3DAllowFacebookAccessAction%26app%3D14&state=0dbc178a375595da4751265a7147c01e#_=_
重定向到 mydomain(响应 302):
http://domain.com/scripts/Gateway.php?action=AllowFacebookAccessAction&app=14&state=0dbc178a375595da4751265a7147c01e&code=AQD-dTeyns0OWpGb_PzfHxUy2iRmpc1XgP6Q24DDRX8MiRTE10lV-b-aSNIlOLVHk576vRs3H8Pf9n0kGwU827MrkzUCUoQGFGEQBkkOJnCy9zb6hZs7TVBsKL2iSuZIhDjLsCOPeKy3zfb37Q6LGhtMICCdB_IQAvU0uRvAkSAX8tdVJ65PEv8imx-2yvLaMoGJleZwKogh7m03vlhV8hJk#_=_
造成此问题的部分代码
...
$facebook = new FacebookApi(array(
'appId' => $app->getProperty('apiKey'),
'secret' => $app->getProperty('secretKey'),
));
$user = $facebook->getUser();
if (!$user) {
header('location: ' . $facebook->getLoginUrl());
exit;
}
...
更新:
我排除了它的服务器设置。我能够在该服务器上运行原始示例脚本。