Blogger × Cloudflare × 独自ドメインでリダイレクトエラーを解決

0

 ■ はじめに

普段はツーリングやキャンプの記事を書いていますが、今回は少し趣向を変えて「ブログを立ち上げるまでに苦労したこと」をまとめてみました。

この記事では、Bloggerに独自ドメインを設定し、
Cloudflareを併用した際に発生したSearch Consoleのリダイレクトエラーを実際に解決した手順をまとめています。
「インデックスされない」「sitemapがエラーになる」といった問題で悩んでいる方は、
本記事の手順で解消できる可能性があります。
これからBloggerでブログを始めようとしている方の参考になれば幸いです。

この記事で解決できること
  • Bloggerで独自ドメインを設定したのにインデックスされない問題
  • Search Consoleでリダイレクトエラーが出る原因
  • Cloudflareを使ったURL統一と回避策

■ 使用している環境

本ブログの環境は以下のようになっています。
ブログサービス:Blogger(無料)
独自ドメイン: お名前.comで取得 1ドメインは永年無料
DNSサーバー: Cloudflare(無料プラン)
カスタムドメイン設定:www.umifurashi.com

■ ブログ環境構築の流れ

ブログを始めるまでに行った主なステップを、時系列に沿ってまとめました。
初めての方でも参考にしやすいよう、各段階での注意点も記載しています。

  1. Google アカウント作成 & Blogger 開設
    まずはブログを開設するために Google アカウントを用意し、Bloggerを開設しました。
    Bloggerの URL(例:umifurashi.blogspot.com)が一時的な公開URLになります。
    この時点で簡単な記事投稿は可能です。

  2. 独自ドメインの取得( お名前.com)
    よりオリジナリティのあるブログにするため、独自ドメイン(例:umifurashi.com)を取得しました。
    お名前.comにアカウントを作成し、任意のドメインを取得します。
    ドメインの種類(TLD)などにより、ドメインの値段は変化します。
    今回、自分が取得したドメインは、1300円位でした。

    この段階ではまだBloggerとは未接続です。

  3. CloudflareでDNS管理を開始
    最初はそのまま「お名前.com の DNS」を使って Blogger に接続していましたが、 Google Search Consoleでインデックスを登録しようとした際にリダイレクトエラーが発生し、検索エンジンにインデックス登録されない問題が起きました。

    この問題を解決するために、現在は DNS 管理を Cloudflare に移行し、プロキシ機能を活用しています。
    ※リダイレクトエラーの具体的な解決方法については、後述します。

    Cloudflareでアカウントを作成し、取得した独自ドメインを登録します。

    独自ドメイン入力画面



    プランの選択でFreeプランを選択します。

    プラン選択画面



    DNS を設定(このタイミングでは特に操作不要です)

    DNS設定画面



    ネームサーバー変更の画面が表示されます。
    CloudflareのDNSをコピーしておきます。

    CloudflareのDNS


    お名前.comでCloudflareのDNSを登録します。
    契約者管理画面に行き、ネームサーバー/DNS→ネームサーバーの設定を開きます。

    契約者管理画面



    ブログに使用するドメインを選択します。
    ネームサーバの選択で、「その他ネームサーバーを使う」を選択し、
    コピーしておいたCloudflareのDNSを記載します。

    DNSの反映に、数時間~48時間程度かかるののんびり待ちます。
    DNSが反映されているかは下記のサイトで確認可能です。
    DNS Checker - DNS Check Propagation Tool

  4. Blogger 側でカスタムドメインを設定
    DNSの反映を確認後、カスタムドメインをBloggerに設定します。
    サブドメインの設定も必要です。私は「www」を指定しているので、ブログのURLは「www.umifurashi.com」となります。
    他にこのドメインを使用する予定がある場合は、「blog」などをサブドメインとして使用することを検討すると良いでしょう。

    カスタムドメインを設定画面


    この時、下記のようなメッセージが出ます。
    内容としては、DNSに 2 つの CNAME レコードを記述しろというものです。
    ランダムな値が表示されるので、表示されたレコードをメモしておきます。

    エラーメッセージ



    Cloudflareの管理画面を開き、アカウントホーム→ドメインを選択
    ドメインの管理画面で、DNSレコードの画面を開きます。
    上記で表示されている、レコードを登録します。

    DNSレコード登録画面



    レコードの反映に、数時間~48時間程度かかるでのんびり待ちます。
    レコード反映後、再度Blogger 側でカスタムドメインを設定します。

    カスタムドメイン設定後、httpsも有効化しておきます。
    ここまでできればカスタムドメインの設定は完了です。

    HTTPS有効化



  5. サイトマップ・robots.txt・Search Console 登録

    検索エンジンにブログの内容を正しく伝えるために、 サイトマップを Search Console に登録しておきます。
    これにより、 Google などがブログの記事やページ構成を効率よくクロール(巡回)してくれるようになります。

    サイトマップのURLは以下の形式です:
    https://<ブログのURL>/sitemap.xml
    例:/sitemap.xml

    併せて robots.txt の設定も確認しましょう。
    例えば以下のような内容は、すべての検索エンジンに対し /search(ラベルページや検索結果ページ)をクロール禁止し、 その他のページは許可するという意味です:

        User-agent: *
        Disallow: /search
        Allow: /
        Sitemap: /sitemap.xml
          

    Disallow: /search は重複コンテンツを避けるための設定で、通常はこのままでOKです。
    ラベルページも検索結果に出したい場合は、この行を削除します。


  6. ブログデザイン・記事テンプレート整備
    プロフィール、お問い合わせ、プライバシーポリシーなどの基本的なページを整備します。

    以上で、ブログの環境構築は完了です。
    ここからは、 構築時に発生したトラブルと、その解決方法について紹介していきます。

■トラブル対応

  • Google AdSense  で「所有権確認」ができない
    問題: カスタムads.txtに、値を設定し所有者確認をしようとするがうまくいかない。

    カスタムads.txt設定画面


    対応:
    DNSレコードに Googleの指定IPを登録する。
    Cloudflareの管理画面を開き、アカウントホーム→ドメインを選択します。
    ドメインの管理画面で、DNSレコードの画面を開きます。
    下記画像のようにIPアドレスを登録します。

    DNSレコード登録画面

    同様に計4つのIPアドレスを登録します。
    216.239.32.21
    216.239.34.21
    216.239.36.21
    216.239.38.21
    登録後DNSレコードが以下のようになっていればOKです。
    名前は自身のドメイン名となります。

    DNSレコード登録画面



  • Search Consoleで リダイレクトエラーが発生 し、検索エンジンにインデックス登録されない。

    問題: search Consoleにサイトマップを登録したが、インデックスが登録されていない。リダイレクトエラーが発生している。
    現在、Google はウェブページのクロールにおいて スマートフォン用 Googlebot(モバイルファーストインデックス) を使用しています。

    一方で、Bloggerでは同じ記事でも、パソコンとスマートフォンで閲覧する際に異なるURL(=パラメータ付きのモバイルページ)が使用されます。
    この仕様により、Googlebot がクロール中にURLの切り替えやリダイレクトが正しく処理できず、リダイレクトエラーを引き起こしている可能性があります。

    対応:
    Cloudflareの プロキシサービスを使って、URLのリダイレクト(書き換え)ルールを強制的に設定する

    要するに、 Blogger 側で自動的にリダイレクトされてしまう前に、Cloudflare 側で意図したURLにあらかじめ書き換えておく 、という考え方です。
    これにより、リダイレクトのループや Googlebot の混乱を防ぐことができます。

    Cloudflareの管理画面を開き、アカウントホーム→ドメインを選択します。
     SSL/TLSを開き、暗号化モードがフルになっていることを確認します。
     ルール→概要→ルールを作成から、「URL書き換えルール」を選択します。
    URL書き換えルールの編集画面が開くので以下のように設定します。

    ルール名:任意(わかれば何でもよい)

    受信リクエストの条件(Mobileだけでよいかも?)
    式: (http.user_agent contains "Mobile") or (http.user_agent contains "Googlebot") or (http.user_agent contains "Android") or (http.user_agent contains "iPhone")

    受信ルール設定画面


    書き換え内容

    書き換えルール設定画面


    concat(http.request.uri.query, "&m=0") を使うことで、スマートフォンからアクセスされた際に URLの末尾に「&m=0」 を強制的に追加しています。
    この m=0 は Blogger において PC用表示を指定するパラメータであり、スマホからのアクセスであっても 常にPC用のURLに統一することができます。
    これにより、モバイル用(?m=1)とPC用でURLが分かれてしまう問題を防ぎ、Googlebotのクロール時にもリダイレクトエラーが起きにくくなります。

    上記設定後、スマホからブログへアクセスし、URLの末尾から「?m=」の表記が消えていれば対応完了です。

■ まとめ

Bloggerで独自ドメインのブログを構築する際には、一見シンプルに見えても、**DNS設定・HTTPS対応・リダイレクトの扱い**など、細かな落とし穴がいくつか存在します。 特に今回は、以下の点でつまずきました:
  • Search Consoleにサイトマップを登録しても、インデックスされない
  • モバイルとPCでURLが分かれるBlogger特有の仕様によるリダイレクトループ
これらの問題に対し、CloudflareのDNS・プロキシルールを活用してURLの統一とHTTPS制御を行うことで、無事にブログを安定運用できるようになりました。 本記事が、これから Blogger × 独自ドメイン でブログを始めようとしている方、あるいは同じような問題に直面している方の一助となれば幸いです。

▶ 全記事一覧はこちら