Facebook PHP SDK抛出未经授权的源IP地址错误

时间:2012-06-21 23:23:45

标签: facebook-graph-api oauth facebook-fql facebook-php-sdk facebook-oauth

我最近发现当我们尝试通过Graph API发出FQL查询时,我们的一个生产服务器发出致命错误。其他服务器上完全相同的代码完美无缺。服务器位于具有单个IP地址的负载均衡器后面。

错误是:

  PHP Fatal error:  Uncaught OAuthException: (#5) Unauthorized source IP address
  thrown in /usr/local/home/faniq/php-lib/facebook/base_facebook.php on line 1039

我尝试将IP地址添加到我的FB应用程序的服务器白名单(空白)。当我尝试保存白名单时,它给了我这个错误:   您的IP应包含在服务器白名单中。

我甚至尝试了一系列IP地址,仍然拒绝保存。其他生产服务器和我们的开发环境都运行良好,所以我很茫然。任何想法为什么Facebook不接受来自这个特定服务器的请求?

1 个答案:

答案 0 :(得分:0)

除非您要限制来自特定服务器的API调用,否则您不需要在“高级设置”中输入IP地址。由于您的服务器位于负载均衡器后面,因此您应该为负载均衡器后面的每个服务器输入公共IP,而不是负载均衡器IP地址。

服务器将直接从每个服务器调用API,而不是通过负载均衡器。负载均衡器仅用于对服务器的传入请求,而不是像API调用那样传出。