1

正常に機能している多くのサイトについて、開発者 facebook com/tools/debug で OpenGraph デバッガーを使用して実行すると、Facebook はサーバーが 502 または 503 応答コードを返したと報告しています。

これらのサイトは、負荷が高くないサーバーでは明らかに正常に動作しています。私が試した URL には以下が含まれますが、これらに限定されません。

http://ac.mediatemple.net http://freespeechforpeople.org

実際、これらはすべて MediaTemple によってホストされているサイトです。しかし、MediaTemple の人々と話をした後、彼らはそれが API のバグであるに違いなく、彼ら側の問題ではないと主張しました。MediaTemple または他の誰かによってホストされているサイトで、Facebook Debug ツールから予期しない 500/502/503 HTTP 応答コードを受け取った人はいますか? 修正はありますか?

これらの 1 つの Apache ログを確認したところ、Apache が Facebook からのリクエストを受信した、または 502 応答などの証拠を見つけることができなかったことに注意してください。

4

1 に答える 1

0

彼らのこの応答を得た:

現時点では、(mt) Media Temple サーバーは、デバッガーを含む Facebook からのすべての要求に対して 200 の応答コードを返しているようです。これは、アクセス ログでデバッガーからのヒットを検索することで確認できます。アクセス ログの表示に関する追加情報については、次のナレッジベースの記事を参照してください。

サーバーの access_log ファイルと error_log ファイルはどこにありますか? http://kb.mediatemple.net/questions/732/Where+are+the+access_log+and+error_log+files+for+my+server%3F#gs

次のコマンドを使用して、Facebook からのヒットのアクセス ログを確認できます。

cat <name of access log> | grep 'facebook' 

これにより、Facebook からのすべてのヒットが返されます。通常、デバッガーはユーザー エージェント 'facebookplatform/1.0 (+http://developers.facebook.com)' を指定しますが、Facebook からの一般的なヒットは 'facebookexternalhit/1.0 (+http://www.facebook. com/externalhit_uatext.php)」。

この情報を使用して、次のように「curl」を使用して Facebook からの要求をエミュレートすることにより、さらに詳細なテストを実行できます。

curl -Iv -A "facebookplatform/1.0 (+http://developers.facebook.com)" http://domain.com 

これにより、200 または 206 の応答コードが返されます。

要約すると、サーバーが 200 の応答コードを返していることがすべて示されているため、問題はデバッガーがこの応答コードを解釈する方法にあるようです。バグ レポートは Facebook に提出されており、この問題に関する詳細情報の入手に引き続き取り組んでいます。より多くの情報が利用可能になり次第、必ず更新します。

良いニュースは、彼らがそれを解決するのに忙しいということです。悪い知らせです、それは私たちの手に負えません。

ここに問題のフォーラム投稿があります:

https://forum.mediatemple.net/topic/6759-facebook-503-502-same-html-different-servers-different-results/

800 を超えるビューと最近の活動により、彼らはそれに懸命に取り組んでいると述べています。

https MT サイトではリターン コードすら返されないことに気付きました。

Error parsing input URL, no data was scraped.

解像度

MTはそれが彼らのせいであることを認め、修正しました:

Facebook デバッガーの問題を調査したところ、不正な形式のリクエストが原因で、このツールで使用される複数の IP がファイアウォールによってフィルター処理されていたことがわかりました。現時点で Facebook デバッガー ツールが使用する IP アドレスの範囲をホワイトリストに登録しました。これは、彼らの Web サイトに記載されているとおりです。これにより、これが再び発生するのを防ぐことができます。

当社の自動禁止システムにより、複数の Facebook IP アドレスがブロックされていると思われます。これは、最初の調査ではすぐには明らかになりませんでした。これが早期に発見されなかったことをお詫びします。

API リクエストが断続的に失敗する理由は、多くの Facebook IP アドレスのほんの一握りだけがブロックされたためです。API は、複数の IP 範囲にわたって負荷分散されます。404 応答が返される HTTP リクエストや無効な PUT リクエストなどの不正なパターンをシステムが検出すると、グローバル ファイアウォール ルールが追加され、動作が緩和されます。多くの場合、このシステムは素晴らしく機能し、絶え間ない脅威からお客様を保護します。

そうは言っても、今日、Facebook API の範囲をホワイトリストに登録する過程にあり、システムがこれらのリクエストをブロックしていないことを確認しています。問題が解決しない場合は、引き続き影響を受ける方に確認していただきたいと思います。何らかの理由で問題が解決しない場合は、既存のサポート リクエストを開くか、返信してください。

于 2012-12-12T00:47:06.203 に答える