SNSでシェアしたときに、サムネイル画像が出ない。
皆さんはまず、どこを疑いますか。
タグの書き方、画像のサイズ、指定したURLが相対パスになっていないか。だいたいこのあたりだと思います。私もそこから見ます。順番としては、それで合っています。
ただ、そこを直しても変わらないことがあります。
タグのほうは合っていました
書き方も、画像の指定も、問題ありませんでした。
シェアの画面を作るとき、SNSはそのページを読みに来ます。読みに来て、タグを見て、指定されている画像を取りに行く。この流れのどこかが止まっているはずです。
SNS側が提供している確認ツールで見ると、403という数字が返っていました。
403は「読ませない」という返事です。
自分で開くと普通に表示されます
ここが分かりにくいところなんですよ。
ブラウザで開けば、ページは普通に見えます。画像も出ます。手元から直接取りに行っても、ちゃんと返ってきます。
人が見に行くと通るのに、SNSが見に行くと追い返される。
玄関の鍵は開いているのに、門のところで別の人が立っていて、特定の相手だけ通していなかった、という状態でした。
弾いていた場所が3つありました
タグではなく、サイトのサーバー側でSNSを弾いていました。
しかも1か所ではありません。
- 検索エンジンなどに向けた案内ファイルで、そのSNSのクローラーだけ「見に来るな」と書かれていた
- サーバーの設定ファイルで、そのSNSの会社が使っているIPアドレスの範囲を拒否していた
- プログラム側で、そのSNSのクローラーだと判定したら403を返す処理が書かれていた
3か所とも、いつ誰が入れたものかは分かりません。過去のどこかで、迷惑なアクセスを止めるために入れられたものだと思います。
止めた相手の中に、サムネイル画像を取りに来るクローラーが混ざっていた。それだけの話です。
全部外したのに403のままでした
3か所とも解除して、確認ツールをもう一度回しました。
403でした。
サーバー側は通しているのに、まだ弾かれている。ここでもう一度、サーバーの設定を疑い直しました。
違いました。SNS側が、以前の「見に来るな」という指定を自分のところに覚えていて、それを見て取りに行くのをやめていたんです。
相手のキャッシュには、こちらから手が届きません
この部分は、こちらでどうにかできる範囲の外にあります。
時間が経てば、向こうが覚え直します。数時間で戻ることもあれば、2日近くかかることもあります。待つ以外にありません。
シェアされること自体が少ないサイトなら、この確認は後回しで構いません。求人や商品ページのように、リンクを送ってもらう機会が多いサイトほど効いてきます。
LINEとXで出れば、サーバー側は終わっています
困るのは、直したのに直った実感がないことです。
そこで、別のSNSで確認しました。LINEとXでシェアして、サムネイルが出ました。この2つが出るということは、サーバーは画像を渡しているということです。
つまり、残っている403は相手側の記憶の問題で、こちらの作業は終わっている。そう判断できます。
判断できると、待てるんですよ。
あわせて画像も差し替えました。1800×945のPNGで1.07MBあったものを、1200×630のJPEGで153KBに落としています。9つのテンプレートで指定がばらついていたので、そこも揃えました。
社内や制作会社に聞くとき、こう伝えると早いです。ブラウザでは見えているがSNSからは403が返っている、案内ファイルとサーバー設定とプログラムの3か所を見てほしい。この一言があるだけで、タグを何度も見直す時間がなくなります。
FAQよくある質問
- QOGPタグを直しても画像が出ないときは、次にどこを見ればいいですか。
- Aブラウザで普通に見えているかを先に確かめてください。見えているのにSNSからだけ失敗するなら、サーバー側でそのSNSのクローラーを弾いている可能性があります。今回は案内ファイル、サーバーの設定ファイル、プログラムの3か所に分かれて残っていました。
- QなぜSNSのクローラーを弾く設定が入っていたのですか。
- Aいつ誰が入れたかは分かりませんでした。迷惑なアクセスを止める目的で入れられたものだと考えています。止める相手を指定するとき、サムネイル画像を取りに来るクローラーが一緒に含まれてしまうことがあります。
- Q直したのに確認ツールで403が消えません。
- ASNS側が以前の指定を覚えていることがあります。こちらのサーバーが通していても、向こうが取りに行くのをやめている状態です。数時間から2日ほどで解消します。別のSNSでシェアしてサムネイルが出れば、サーバー側の作業は終わっていると判断してよいです。
- QOGP画像のサイズに決まりはありますか。
- A今回は1200×630のJPEGにしました。もとは1800×945のPNGで1.07MBあり、153KBまで下がっています。大きすぎる画像は読み込みに時間がかかるので、表示に必要な大きさに収めるほうが確実です。
- Qサーバー会社の管理画面にある制限機能が原因のこともありますか。
- A可能性はありますが、今回は該当しませんでした。管理画面側の制限機能はすべて未設定で、原因はサイトのファイルの中にありました。管理画面から順に疑うと遠回りになる場合があります。