XML サイトマップとrobots.txt:正しい設定方法
6 min
XMLサイトマップは、Googlebotによる発見を容易にするために優先ページをリストアップします。robots.txtファイルはロボットがクロールできるセクションを制御します。これら2つのファイルは補完的であり、インデックスエラーを避けるために最新の状態に保つ必要があります。
サイトマップとrobots.txtは2つの最も基本的なSEO設定ファイルです。設定が間違っていると、重要なページを意図せず除外したり、無用なURLにクロールバジェットを無駄にしたりする可能性があります。
XMLサイトマップ:構造とベストプラクティス
XMLサイトマップはインデックス化したいURLをリストアップし、オプションでメタデータ(更新日、更新頻度、優先度)を添えます。Googleはこれらのメタデータを読みますが、文字通りには従いません。
50,000URL以上または50MB以上のサイトでは、テーマ別の複数のサイトマップファイル(記事、製品、カテゴリ)を指すサイトマップインデックスを作成してください。
- 200コードを返す正規の、インデックス可能なURLのみを含める。
- noindexページ、リダイレクト、パラメータ付きページを除外する。
- Search Consoleでサイトマップを送信し、robots.txtで参照する。
- 新しいコンテンツが公開されるたびにサイトマップを自動更新する。
robots.txtファイル:ディレクティブと制限
robots.txtはドメインのルートにあり、user-agentごとのAllow/Disallowルールのシンプルな構文を使用します。GooglebotにサイトのどのパーツをクロールさせないかをGooglebotに指示します。ただし、インデックスからの除外を保証するわけではありません。
robots.txtでブロックされたページは、外部リンクがそのページを指している場合は依然として結果に表示される可能性があります。完全に除外するには、robots.txtではなくnoindexタグを使用してください。
- 管理フォルダ、ステージング、テストフォルダをブロックする。
- 数千のバリエーションを生成する内部検索URLをブロックする。
- ページのレンダリングに必要なCSSとJSファイルは絶対にブロックしない。
- robots.txtの下部にサイトマップのURLを参照する。
重大なミスとその回避方法
最も重大なミス:移行またはクリーンアップされていないステージング設定の後、robots.txtで「Disallow: /」を使ってサイト全体を誤ってブロックしてしまうこと。各デプロイ後にこのファイルを優先的に確認してください。
エラーのあるURL(404、301)をサイトマップに含めることは、厳密さの欠如をGoogleに示し、存在しないリソースにクロールバジェットを無駄にする一般的なミスです。
SEO監査では、サイトの15〜40%が、サイト更新後の不十分なメンテナンスによることが多い、サイトマップと実際のインデックス可能なページの間に矛盾があります。
2025〜2026年技術的SEO監査に関する業界調査
FAQ
サイトマップで優先度と更新頻度を指定する必要がありますか?
これらのタグ(priorityとchangefreq)はGoogleに広く無視されており、Googleはクロール頻度を推定するために独自のシグナルを使用します。その存在は有害ではありませんが、その不在も問題ではありません。
送信されたサイトマップをGoogleが読むまでどのくらいかかりますか?
Search Consoleで送信した後、Googleは通常24〜72時間以内にサイトマップを読みます。新しいURLの発見とそれらの効果的なインデックス登録は、サイトの権威に応じてより時間がかかります。
robots.txtはすべての検索エンジンに対して機能しますか?
標準を尊重するすべてのロボットはrobots.txtを尊重します。しかし悪意のあるロボット(スクレーパー、非準拠クローラー)はそれを無視します。したがって、robots.txtはセキュリティツールではなくクロール管理ツールです。