見出し画像

noteでURLがカードにならない?原因はCloudflareのボットファイトモードだった!

ECパレットのOGP画像を作りました!(スクショ貼っただけ)
OGP画像というのはSNS等でシェアされた時に表示される画像ですね。あの画像があるだけでリンクが華やかになります。
noteでもURLを貼ると自動でカード型になりますよね。

せっかくなので過去記事の旧URLも現在のURLに張り替えようと思い、ウキウキして張り替えてみたところ…なぜかカード型にならない。ただのURLリンクになってしまうのです。なぜだ。

そこでうちのチャッピーに聞いてみたところ、それはキャッシュのせいだよ!とのこと。
なるほど、URL末尾に「/?1」とかクエリをつけてキャッシュ飛ばせばいいんだな。

ということでやってみましたが変わらない。なぜだ。ググってもキャッシュ絡みしか出てこない。

よーしチャッピーがダメならGeminiさんだ。Geminiさんに聞いてみよう。

Geminiさんもやはりキャッシュだろうとの答えでしたがもう少し踏み込んだ答えが帰ってきました。

「最近サイト側でSSL(https)の更新や、**サーバーのセキュリティ設定(WAFなど)**を変更されませんでしたか?

noteのロボットがサイトを読み取りに行こうとした際、サイト側のセキュリティで弾かれてしまうと、カード化されずにただのリンクになってしまいます。」

なるほどあれはボットが情報を見に来ていたのか!そうなるとCloudflareの設定が怪しいですね。たしかどこかのタイミングでボットファイトモードをオンにしたはず。

Cloudflareのセキュリティログを確認したところ、ユーザーエージェント「notebot」がブロックされているのを発見しました。
これはどう見てもnoteのボットです。
これを弾いていたためにnote側がサイトの情報を読み取れず、カードが表示されなかったようです。

試しに一時的にボットファイトモードをオフにしたところ、めでたくカードが表示されました!


でもボットファイトモードはオンにしたいですよね。ということで解決方法もGeminiさんに教えてもらいました。

解決方法:Cloudflareで「notebot」を許可する

  1. Cloudflareのダッシュボードで [セキュリティ] > [セキュリティ ルール]を開きます。

  2. [ルールを作成する] をクリック。

  3. 以下のように設定してください:

    • ルール名: Allow note (何でもOK)

    • フィールド: ユーザーエージェント

    • 演算子: 含む (contains)

    • : notebot

    • アクション: [スキップ] (Skip)

    • スキップするコンポーネント: [ボットファイトモード] にチェックを入れる。

  4. 一番下の [展開] を押して保存。


設定した後の手順

設定が反映されるまで数分かかることがあります。その後、noteのエディタに戻って以下の手順を試してください。

  1. 一度、失敗しているURLを完全に削除する。

  2. 先ほどお伝えした「キャッシュ対策」を兼ねて、URLの末尾に ?1 をつけて貼り付ける。

    1. https://ec-palette.com/?1

  3. そのまま Enterキー を押す。


最後のキャッシュ対策の部分はやらなくても無事に表示できました。

Xのような世界的なアプリのボットはボットファイトモードオンでも弾かれないようになっているみたいですが、日本独自のnoteはCloudflareがあやしいと判定してしまうのでしょうかね。

まさかの原因は自分で設定したセキュリティ対策というオチでした。

追記(2026/07/23)

片瀬様の記事でご指摘いただき気づいたのですが、現在は無料プランでは上記の設定ができないようです!

なんと以前は「スキップ」の設定で「ボットファイトモード」が選択できたのに、その部分が「Super Bot Fight Modeの全ルール」に変わっていました!

そうきたかCloudflareめ!
サイレント変更に振り回される、Cloudflareあるあるですね(サイレントじゃないかもだけどw)

いいなと思ったら応援しよう!