OGP Generator
OGPキャッシュ問題と解決策|SNSで更新が反映されない時の対処法
2025-11-27
まずここを確認
90%の原因は「SNSキャッシュ」か「画像URLが同じ」。
1. 各SNSのデバッガーでキャッシュクリア
2. それでも更新されないなら画像URLを変更(?v=2 を追加)
即決フロー
┌─────────────────────────────────────────┐
│ OGPが更新されない │
└─────────────────────────────────────────┘
↓
┌─────────────────────────────────────────┐
│ HTMLは正しく更新されている? │
│ (curl で取得して確認) │
└─────────────────────────────────────────┘
↓ No
┌─────────────────────────────────────────┐
│ ✓ サーバー側の問題 │
│ デプロイを確認、CDNキャッシュをパージ │
└─────────────────────────────────────────┘
↓ Yes
┌─────────────────────────────────────────┐
│ ✓ SNSキャッシュの問題 │
│ 各デバッガーでクリア │
└─────────────────────────────────────────┘
↓ それでも更新されない
┌─────────────────────────────────────────┐
│ ✓ 画像URLを変更 │
│ og.png?v=2 のようにパラメータ追加 │
└─────────────────────────────────────────┘
プラットフォーム別のキャッシュクリア
X(Twitter)
ツール: Card Validator
- ログイン(必須)
- URLを入力して「Preview card」
- 新しいOGP情報が取得される
注意: 完全にクリアされるまで数分かかることがある。
ツール: シェアデバッガー
- URLを入力して「デバッグ」
- 「もう一度スクレイピング」をクリック
- 新しいOGP情報が取得される
LINE
手動クリア: 不可能
対策:
- 時間経過を待つ(通常24時間程度)
- 画像URLを変更する
<!-- これで強制的に新しい画像として認識される -->
<meta property="og:image" content="https://example.com/og.png?v=2" />
ツール: Post Inspector
- URLを入力して「Inspect」
- 新しいOGP情報が取得される
7日ごとに自動更新される仕様。
Discord / Slack
公式クリア手段: なし
Slackの裏技:
- リンクを投稿
- 展開されたプレビューの「×」で閉じる
- もう一度投稿すると再取得することがある
キャッシュ問題を予防する設計
1. 画像URLにバージョンを含める
<!-- ファイル名を変える -->
<meta property="og:image" content="https://example.com/og-v2.png" />
<!-- またはクエリパラメータ -->
<meta property="og:image" content="https://example.com/og.png?v=20250102" />
URLが変われば、全SNSでキャッシュは無効化される。
2. 公開前にデバッガーで確認
- ステージング環境で先にOGPを設定
- 各デバッガーで確認してから本番公開
3. CDNキャッシュに注意
画像がCDN経由の場合、CDN側のキャッシュも考慮。
Cache-Control: max-age=86400
更新時は画像URLを変更するか、CDNキャッシュをパージ。
トラブルシューティング
画像だけ更新されない
| 確認項目 | 対処 |
|---|---|
| 画像URLを変更したか | ?v=2 を追加 |
| CDNキャッシュ | パージを実行 |
| 画像サイズ | 5MB以下か確認 |
タイトルが古いまま
| 確認項目 | 対処 |
|---|---|
| HTMLが更新されているか | curl で取得して確認 |
| SSRされているか | SPAはJSを実行できないクローラーに注意 |
| リダイレクト | 最終URLにOGPがあるか確認 |
そもそもOGPが読まれない
curl -I https://example.com/page
Content-Type: text/htmlか確認- リダイレクトがある場合、最終URLを確認
robots.txtでブロックしていないか確認
SNS別のキャッシュ仕様まとめ
| プラットフォーム | キャッシュ期間 | 手動クリア | URL変更で強制更新 |
|---|---|---|---|
| X(Twitter) | 約7日 | ✓ | ✓ |
| 数時間〜 | ✓ | ✓ | |
| LINE | 不定 | ✗ | ✓ |
| 約7日 | ✓ | ✓ | |
| Discord | 不定 | ✗ | ✓ |
| Slack | 不定 | △ | ✓ |
「URL変更で強制更新」が最も確実な方法。
まとめ
| 状況 | 対処 |
|---|---|
| Twitter/Facebookで更新されない | デバッガーでクリア |
| LINEで更新されない | 画像URLを変更 |
| 全SNSで更新されない | 画像URLを変更(?v=2) |
| HTMLが古いまま | サーバー/CDNキャッシュを確認 |
キャッシュ問題の最終手段は「画像URLを変更する」。これで全SNSに対応できる。
関連記事
- OGP設定完全ガイド — 設定の判断基準
- 動的OGP画像の生成方法 — 自動生成の実装