16

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

また、プロセスをリサイクルするまで同じサーバーがこのエラーを生成し続けることにも気付きました (つまり、上記の場合、繰り返し失敗し続けるのはweb.20web.6heroku ps:restartです) が、失敗し続けるのは別のサーバーになります。

いくつかの調査を行った後、Facebook アプリ -> [詳細設定] ページでサーバー IP をホワイトリストに登録することを人々がアドバイスし続けていることに気付きました。つまり、Facebook はブラックリストに登録された IP のリストを保持しており、ここでそれらへのアクセスを 1 つずつ許可できます。なぜ Facebookはユーザーに Facebook アプリに Heroku を使用することを明確に勧めているのに、同時にサーバーをブラックリストに載せているのか疑問に思いました。

だから基本的に:

  1. Heroku は Facebook のホスティング パートナーです
  2. Heroku は、アプリがリサイクルされるたびに予測不可能な IP アドレスをユーザーに提供します
  3. また、Facebook は Heroku のサーバーの多くをブラックリストに載せています (私の計算では 10 分の 1 程度)。
  4. したがって、アプリがすべてのリクエストに対して API にアクセスできることを保証することはできません。

私の質問は:

私のような開発者は、API リクエストのかなりの部分で失敗することが明らかな Facebook がスポンサーとなっている Heroku 環境で、本番対応のアプリをどのように構成することを期待されているのでしょうか?

4

3 に答える 3

3

Facebook が何らかの理由で Heroku IP をブロックし始めたようです。これは Heroku が制御できるものではなく、Facebook だけが解決できるものです。Facebookのサポートに連絡します。

于 2013-04-29T12:55:03.377 に答える
0

Heroku で、 Proximoなどのアドオンを試してみて、どうなるか見てみましょう。私は自分でプロビジョニングしたばかりで、同じことが起こるかどうかを監視しています。

于 2017-04-24T23:02:31.827 に答える