web-dev-qa-db-ja.com

URLのリンティングエラー:URLのリンティング中に内部エラーが発生しました

方法debug facebook debugger

問題の詳細な説明:

「OpenGraphProtocol In Posts and Pages」プラグインを使用して、自己ホスト型wordpressサイトの投稿のOGデータを手動で入力します。Facebookで共有する前に、投稿のURLをテストします。 FBデバッガツールと結果は常に正しいです。

しかし、最近、デバッガーが次のエラーメッセージを返しました:「URLのリンティングエラー:URLのリンティング中に内部エラーが発生しました」そして私はそれを何日も取り除くことができません。何度かデバッグを試みましたが、役に立ちません。行き詰まっています。解決策をグーグルで検索しましたが、見つかりませんでした。私は間違っているかもしれませんが、このエラーメッセージはまれなようです。

私は専門家ではありませんが、私の投稿の二重OGデータによってデバッガツールがどういうわけか混乱したと思います。

  1. プラグイン「OpenGraphProtocol In PostsandPages」に手動で挿入したOG情報。
  2. 動画が投稿に挿入されると、JWPLayer wordpressプラグインによって自動的に生成されるOG情報。

最初のものだけが必要です。通常、JWPlayerのカスタムフィールドを削除しますが、今回はそれを忘れました。

デバッガーがエラーメッセージを返した後、JWPカスタムフィールドを削除しました。競合が発生することを期待して、投稿を保存し、デバッグを再試行しました。デバッガーはエラーメッセージを再度返しました。

Graph APIは私の投稿に関する古い情報を認識し、それをフラッシュしませんが、投稿のすべてを修正し、その後数回デバッグしました。デバッガーが私のURLにエラーを見つけ、それを忘れないように思えます。

投稿を削除し、そのコンテンツをコピーして新しい投稿に貼り付け、同じタイトルを付けました(短いパーマリンクをたどる可能性のある訪問者を失いましたが、とにかく)。デバッガーは、再公開された投稿に対して同じように反応します。再びエラーメッセージ。デバッガーで他の投稿をテストしましたが、すべてが完璧です。デバッガーがこの特定のURLを何かのために記憶していることは明らかです。 URLに別のタイトルで投稿を再公開すると、問題は解決します。

その問題のあるURLをFacebookに共有しましたが、奇妙なことに正しいデータが表示されています。タイトル、説明、サムネイルなど、すべて問題ないようです。ただし、投稿の共有ボタンをテストしたところ、Facebookで間違ったデータが表示されましたが、すでに修正しました。デバッガーは、投稿に含まれなくなったデータを確認します。そのため、訪問者がFacebookで間違った情報を共有しないように、共有ボタンを削除せざるを得ませんでした。

今、私は逆説的な状況にあり、デバッガーをデバッグするへの方法を見つけようとしています。そのメモリをフラッシュして、URLを忘れて、ゼロから新たに開始できるようにするにはどうすればよいですか?

ご覧のとおり、私はこれらの問題の専門家ではありません。私はphpとcssの知識がなくてもサイトを構築するために膨大な時間とリソースを費やしましたが、これらのFacebookのバグのために、今ではすべてが地獄に落ちています。私はこのナンセンスに対処する貴重な時間を失っています。なぜすべてがそれほど複雑でなければならないのですか?私はすべての開発者にお願いします。1つの優れた、シンプルで、ユーザーフレンドリーで実用的な標準を作成し、それに固執してください。複雑になるのはやめてください。このエラーメッセージは今何ですか?デバッガーは、説明も解決策もまったく提供していません。問題を解決する代わりに、それは行き詰まり、それ自体が問題になりました。できることは、エラーが自然に消えることを期待して待つことだけです。これは純粋なナンセンスです。

さらなる詳細:

これは、Graph APIが私のURLに表示するものです。そのデータはもう有効ではありませんが、デバッガーはそれを記憶しています。JWPLayerプラグインによって自動的に挿入されたビデオOGを見ることができます:

{
   "url": "http://mydomain/post-title/",
   "type": "video.movie",
   "title": "",
   "image": [
      {
         "url": "http://mydomain/uploads-folder/post-title-video-thumbnail.jpg"
      },
      {
         "url": "http://mydomain/uploads-folder/post-thumbnail.jpg"
      }
   ],
   "video": [
      {
         "url": "http://mydomain/uploads-folder/jw-player-plugin-for-wordpress/player/player.swf?file=http\u00253A\u00252F\u00252Fmydomain\u00252Ffiles\u00252Fvideo-title.flv&controlbar=bottom&dock=false&autostart=false&height=331&width=545&captions.back=false&captions.fontsize=12&captions.state=true&icons=true&playlist.position=none&playlistsize=180&repeat=none&shuffle=false&bufferlength=1&smoothing=true&stretching=uniform&wmode=opaque&mute=false&volume=90&plugins=captions-1\u00252Cgapro-2\u00252C&gapro.accountid=UA-76476476476-1&gapro.trackstarts=true&gapro.trackpercentage=true&gapro.tracktime=true",
         "type": "application/x-shockwave-flash",
         "width": 545,
         "height": 331
      }
   ],
   "description": "",
   "site_name": "here's the name",
   "updated_time": "2012-12-05T20:09:40+0000",
   "id": "754654658476545"

これは、修正後にデバッガーに表示されるはずですが、失敗します。ただし、FacebookにURLを貼り付けると正しく表示されます:

{
   "url": "http://mydomain/post-title/",
   "type": "website",
   "title": "here's the title",
   "image": [
      {
         "url": "http://mydomain/uploads-folder/post-thumbnail.jpg"
      }
   ],
   "description": "This is a story about...",
   "site_name": "my site",
   "updated_time": "2012-12-05T20:11:56+0000",
   "id": "754654658476545"
}

ボタンで共有すると、以前の間違ったデータが表示されます。

28
vabsh

Facebookクローラーにデータの再フェッチを強制します。

https://developers.facebook.com/docs/sharing/opengraph/using-objects#update

Facebookクローラーは、オブジェクトを再スクレイプ(したがって更新)します。

オブジェクトのURLがオブジェクトデバッガーに入力されたとき最初のスクレイプから30日ごとアプリがAPIエンドポイントを使用してスクレイプをトリガーしたときこのグラフAPIエンドポイントは、次の呼び出しにすぎません。

POST /?id={object-instance-id or object-url}&scrape=true

Idパラメータは、オブジェクトの正規URLまたはグラフ内のオブジェクトインスタンスのIDのいずれかです。

1
karmiphuc