Facebook API:Heroku服务器的IP地址阻止

Ste*_*las 17 php facebook heroku

我的Heroku PHP facebook应用日志中出现以下错误:

[app web.20] PHP Fatal error: Uncaught OAuthException: (#5) Unauthorized 
source IP address\n thrown in /app/www/sdk/src/base_facebook.php on line 1238
Run Code Online (Sandbox Code Playgroud)

我还注意到,相同的服务器一直产生这个错误,直到我回收进程(即在上面的情况下,web.20web.6会不断重复失败),但之后heroku ps:restart会有不同的服务器继续失败.

现在做了一些研究之后,我注意到人们一直建议我在Facebook App - > Advanced Settings页面中将我的服务器IP列入白名单,这意味着Facebook会保留一份列入黑名单的IP列表,这是您可以逐个访问它们的地方.让我想知道为什么Facebook显然鼓励其用户使用Heroku作为其Facebook应用程序,同时黑名单其服务器.

所以基本上:

  1. Heroku是Facebook的托管合作伙伴
  2. 每次应用程序被回收时,Heroku都会为其用户提供不可预测的IP地址
  3. Facebook已将Heroku的许多服务器列入黑名单(按我的数量计算,大约十分之一)
  4. 因此,您永远无法保证应用程序可以访问其所有请求的API

我的问题是:

像我这样的开发人员如何在Facebook赞助的Heroku环境中配置生产就绪的应用程序,显然必然会在大量的API请求中失败?

Chr*_*ard 7

这很奇怪.我们正在研究它.

编辑:这应该解决.请注意,Facebook因恶意行为阻止了这些IP.我们将继续与他们合作以再次阻止它,但您可以诚实地做的最好的事情是使用提供非共享IP的托管服务提供商.

请参阅此处:https://developers.facebook.com/bugs/649166715098648

  • 我也经常收到这个问题.刚开始发生在几天前.在Heroku上. (4认同)