Coockar

公開日: 約1分

sitemap と robots.txt の役割分担

クロールの制御は robots.txt、発見の補助は sitemap。混同しやすい二つのファイルの責務を、静的サイトの実運用に沿って整理する。

sitemap と robots.txt はどちらも「検索エンジン向けのファイル」とまとめられがちだが、役割は逆方向を向いている。robots.txt は「来ないでほしい場所」を伝える制御であり、sitemap は「ここにページがある」と知らせる発見の補助だ。

robots.txt に書かないこと

インデックスさせたくないページを robots.txt の Disallow で塞ぐのは誤りで、クロールが禁止されるだけでインデックス自体は残り得る。除外の意思表示は各ページの noindex メタで行い、robots.txt は管理画面や検索結果ページのようなクロール不要領域の遮断に限る。

sitemap 側の運用

静的サイトジェネレータの公式プラグインに任せると、多言語ページの xhtml:link 対応も含めて自動生成される。手で書く時代の細かい調整項目は、ほぼ気にする必要がなくなった。

  • lastmod は git の履歴ではなくビルド日時になるものが多い。厳密さが要るなら別途仕組みが必要
  • prioritychangefreq は主要エンジンが無視するので、生成されなくても構わない

まとめ

「制御は robots・発見は sitemap・除外は noindex」と三分すれば迷いがない。この分担さえ守れば、あとはプラグインの既定値で十分だった。