1. ホーム
  2. facebook

[解決済み】FB OpenGraph og:imageが画像を引っ張ってこない(httpsの可能性?)

2022-03-25 23:55:20

質問

Facebookは私のことを把握できない og:image ファイルを作成し、あらゆる解決策を試しました。私は、この現象が https://...

  • を確認しました。 http://developers.facebook.com/tools/debug で、警告やエラーはゼロです。
  • でリンクした画像が見つかっている " og:image しかし、空白で表示されています。しかし、画像をクリックすると、その画像は存在し、その画像に直接移動することができます。
  • 非httpsサーバーでホストされている画像が1つ表示されています。
  • 正方形の画像、JPEG、PNG、大きなサイズ、小さなサイズを試しました。画像はpublic_htmlに配置しました。ゼロが表示されます。
  • キャッシュエラーではありません。 og:image をmetaに追加すると、FBのリンターはそれを見つけて読み込みます。プレビューが表示されます。プレビューは空白です。その のみ 例外が発生するのは、このサイトにない画像に対してです。
  • 私たちは、もしかしたらアンチリーチがあるのではと思いました。 cpanel または .htaccess が画像の表示を妨げていたので、確認しました。なかったのです。さらに、早速 < img src="[remote file]" > を全く別のサーバーにインストールしたところ、画像は問題なく表示されました。
  • が原因ではないかと考えました。 og:type とか、別のメタタグで変なことになってる。それらを1つずつすべて削除して確認しました。変化なし。警告が出るだけです。
  • 別のWebサイトで同じコードを実行すると、問題なく表示されます。
  • 私たちは考えました。 もしかしたら というのも、複数の製品に同じ製品ページ(取得値に基づいて変更、つまり "details.php?id=xxx")を使っているのに、(別のURLから)1つの画像を引っ張ってきているのです。
  • を残す og:image や image_src をオフにすると、FB は画像を見つけられません。

もう限界です。私や他の人がどれだけの時間を費やしたかと言ったら、ショックを受けるでしょう。問題は、これがオンラインショップであるということです。絶対に、絶対に、画像を入れないわけにはいきません。そうしなければならないのです。他にも10ほどのサイトがありますが このサイトだけが og:image の問題があります。また、唯一の https ということで、もしかしたらそれが問題なのかもしれないと思いました。しかし、ウェブ上のどこにもそのような前例は見当たりません。

これがメタタグです。

<meta property="og:title" content="[The product name]" /> 
<meta property="og:description" content="[the product description]" /> 
<meta property="og:image" content="https://www.[ourwebsite].com/images/shirts/overdriven-blues-music-tshirt-details-black.png" />
<meta property="og:image" content="https://www.[ourwebsite].com/images/shirts/overdriven-blues-music-tshirt-art-black.png" />
<meta property="og:image" content="http://www.[ADIFFERENTwebsite].com/wp-content/uploads/2011/06/ARS-Header-Shine2.png" />
<meta property="og:image" content="https://www.[ourwebsite].com/images/ARShopHeader.png" />
<meta property="og:image" content="http://www.[ourwebsite].com/overdriven-blues-music-tshirt-art-black.JPG" />
<meta property="og:type" content="product"/>
<meta property="og:url" content="https://www.[ourwebsite].com/apparel-details.php?i=10047" />
<meta property="og:site_name" content="[our site name]" />      
<meta property="fb:admins" content="[FB-USER-ID-NUMBER]"/>
<meta name="title" content="[The product name]" />
<meta name="description" content="[The product description]" />
<link rel="image_src" href="https://www.[ourwebsite].com/images/shirts/overdriven-blues-music-tshirt-details-black.png" />
<meta name="keywords" content="[four typical keywords]">
<meta name="robots" content="noarchive">

一応、私たちが作っているある商品ページのリンクを貼っておきます。[これが私たちのサイトの検索結果に入るのを抑制しようとするため、リンクは短縮されています]。 http://rockn.ro/114

EDIT ----。

スクレイパーツール「"see what facebook sees"」を使用すると、以下のように確認することが出来ました。

"image": [          
      {
         "url": "https://www.[httpSwebsite].com/images/shirts/soul-man-soul-music-tshirt-details-safari.png"
      },
      {
         "url": "https://www.[httpSwebsite].com/images/shirts/soul-man-soul-music-tshirt-art-safari.png"
      },
      {
         "url": "http://www.[theotherNONSECUREwebsite].com/wp-content/uploads/2011/06/ARS-Header-Shine2.png"
      }
   ],

1つのページに対して検出されたすべてのリンクをテストしました。すべて完全に有効な画像でした。

EDIT 2 ----.

試しに サブドメイン をNONSECUREのサイト(ここからfacebookを通じて実際に画像が見えるようになっています)に追加しました。サブドメインは、http://img。[nonsecuresite].com。そして、すべての画像をメインのサブドメインフォルダに入れ、それらを参照しました。FBにこれらの画像を取り込むことはできませんでした。しかし、非セキュアなメインドメインで参照された画像はすべて引き込まれます。

回避策を掲載しました ----。

Keeganのおかげで、これはFacebookのバグであることがわかりました。回避策として、非HTTPSの別サイトにサブドメインを置き、そこに全ての画像を投下しました。私たちは、コーディネートされた http://img.otherdomain.com/[like-image.jpg] の画像は og:image を各商品ページに追加しました。その後、FB Linterを経由してEVERYリンクを実行し、OGデータをリフレッシュする必要がありました。これはうまくいったのですが、この解決策は応急処置的なもので、仮に https の問題が解決し、自然なhttpsのドメインを使用するように戻ると、FBは別のウェブサイトから画像をキャッシュしてしまい、問題を複雑にしてしまいます。この情報が、他の誰かが32時間のコーディング時間を失うのを防ぐのに役立つことを願っています。 その の生活を送ることができます。

解決方法は?

私も同じ問題に遭遇し、Facebook開発者サイトにバグとして報告しました。それはかなり明確なようです og:image HTTPを使用したURIは問題なく動作し、HTTPSを使用したURIは動作しません。現在、彼らはこれを調査中であることを認めています。

更新:2020年現在、このバグはFacebookのチケットシステムで確認できなくなりました。彼らは応答しなかったので、この動作が変わったとは思えません。しかし、HTTPS URIを og:image:secure は、問題なく動作しているようです。