運用 // 記事

robots.txtでSitemapを指定する意味

robots.txtのSitemap指定が何を助けるのか、書き方と確認ポイントを整理します。

robots.txtは、クローラーに対してクロール方針を伝えるためにサイトのルートへ置くテキストファイルです。その中にSitemap行を書くと、sitemap.xmlの場所もあわせて知らせることができます。

Sitemap行は発見を助ける

sitemap.xmlを /sitemap.xml に置いているだけでも見つかることはあります。ただし、CMSや多言語サイトではsitemapのURLが複数あったり、標準的な場所とは違ったりします。robots.txtに明示しておくと、クローラーがsitemapの位置を見つけやすくなります。

User-agent: *
Allow: /

Sitemap: https://example.com/sitemap.xml

Disallowとは別の役割

robots.txtのDisallowは、どのパスをクロールさせたくないかを伝えるためのものです。一方、Sitemapは、クローラーに読んでほしいURL一覧の場所を知らせるためのものです。どちらもクロールに関係しますが、目的は逆ではありません。

確認したいポイント

  • robots.txtがサイトのルートで取得できる
  • Sitemap行のURLが絶対URLになっている
  • 指定されたsitemapが実際に取得できる
  • HTTPとHTTPS、wwwありなしが混ざっていない
  • 多言語や複数sitemapの指定漏れがない
  • 古いステージングURLが残っていない

サイト公開時やドメイン移行後は、robots.txtとsitemapの組み合わせが崩れやすい部分です。TOOLPOOLのサイトマップチェッカーでは、robots.txtのSitemap指定と実際に取得できるsitemapを同時に確認できます。