我一直有在我的Heroku PHP的Facebook应用程序日志中出现以下错误:Facebook的API:Heroku的服务器的IP地址阻塞
[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
我也注意到,在相同的服务器继续生产这一错误,直到我回收过程(即在上面的情况下,它将是web.20和web.6,它们会一直保持失败),但在heroku ps:restart
之后,将会有不同的服务器保持失败。
现在做了一些研究之后,我注意到人们不停地建议我在Facebook应用程序 - >高级设置页面中将我的服务器IP列入白名单,这意味着Facebook保留一份黑名单IP列表,并且这是您可以允许访问它们的地方之一由一个..这让我想知道为什么Facebook清楚encourages its users to use Heroku for its facebook apps,而同时黑名单的服务器。
所以基本上:
- Heroku的是Facebook的托管合作伙伴
- Heroku的每一个应用程序被回收
- 而Facebook已列入黑名单许多Heroku的服务器(大约1时,为用户提供不可预知的IP地址10我的计数)
- 因此,你永远不能保证你的应用程序将获得访问其所有请求的API
我的问题是:
像我这样的开发人员如何期望在Facebook赞助的Heroku环境中配置适用于生产的应用程序,这显然必然会导致大量API请求失败?
我也觉得这种情况很荒谬。重新启动heroku实例希望他们最终在非黑名单的IP是不是一个可行的解决方案。这篇文章有2个选项来解决这个问题。 http://stackoverflow.com/questions/16086615/5-unauthorized-source-ip-address-error-on-heroku-rails-app – Jody 2013-04-27 12:31:14
+ 1-自周四以来也发生在我们身上。重启我们所有的员工解决这个问题,现在又发生了。 – shem 2013-04-28 09:11:18
发生在我身上:( – coder9 2013-04-29 03:57:00