はじめに
Web サイトがどれだけ丁寧に作られていても、
検索エンジンに正しく理解されなければ、その存在はほとんど意味を持たない。
検索エンジンは人間のようにページを「読む」のではなく、
クローラー(Crawler / Bot) と呼ばれる自動プログラムを使って Web を巡回し、
ページを収集・解析・インデックス化している。
このとき重要になるのが、
- 「どこを見ていいのか/見てはいけないのか」を伝える robots.txt
- 「どのページが存在し、どれが重要か」を伝える Sitemaps(サイトマップ)
という 2 つの基本ファイルである。
検索エンジン最適化(SEO)に関わる人はもちろん、
情報収集・攻防の視点から Web を理解したい人にとっても、Sitemaps は避けて通れない基礎知識である。
1. Sitemaps とは何か
**Sitemaps(サイトマップ)**とは、
Web サイト内の URL 構造を検索エンジンに正確かつ効率的に伝えるためのファイルである。
robots.txt が
「ここは来ないでください」
だとすると、
Sitemaps は
「重要なのはここです。優先的に見てください」
という 案内図 にあたる。
2. なぜ Sitemaps が必要なのか
検索エンジンのクローラーは非常に賢いが、万能ではない。
次のようなページは 見つけにくい:
- 内部リンクが少ないページ
- JavaScript 依存のページ
- 新しく追加されたページ
- 階層が深いページ
- 検索結果やフィルタで生成される URL
そこで サイト側から「公式リスト」を渡すのが Sitemaps。
3. Sitemap の基本形式
最も一般的なのは XML Sitemap。
例:sitemap.xml
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/</loc>
<lastmod>2026-01-01</lastmod>
<changefreq>weekly</changefreq>
<priority>1.0</priority>
</url>
</urlset>
4. 各要素の意味
<loc>
ページの URL(必須)
<loc>https://example.com/blog/robots-txt</loc>
<lastmod>
最終更新日
<lastmod>2026-01-10</lastmod>
検索エンジンは「再クロールすべきか」の判断材料にする。
<changefreq>(参考情報)
更新頻度の目安
daily / weekly / monthly
⚠️ 強制力はない(あくまでヒント)
<priority>(参考情報)
サイト内での重要度
0.0 ~ 1.0
これも 相対的な目安。
5. Sitemap の置き場所
一般的には:
https://example.com/sitemap.xml
または複数ある場合:
https://example.com/sitemap_index.xml
6. robots.txt との連携(超重要)
Sitemap は robots.txt から明示的に指定できる。
例
User-agent: *
Disallow: /admin/
Sitemap: https://example.com/sitemap.xml
クローラーは:
- robots.txt を取得
- Sitemap の場所を認識
- Sitemap に従って効率的にクロール
7. Sitemap の種類
① XML Sitemap(最重要)
- 検索エンジン用
- SEO の基本
② Sitemap Index
大量の URL がある場合に分割管理
<sitemapindex>
<sitemap>
<loc>https://example.com/sitemap-blog.xml</loc>
</sitemap>
</sitemapindex>
③ 特化型 Sitemap
- Image Sitemap
- Video Sitemap
- News Sitemap
メディア系・EC でよく使われる。
8. Sitemap と robots.txt の違い(整理)
| 項目 | robots.txt | Sitemap |
|---|---|---|
| 役割 | クロール制限 | クロール促進 |
| 意味 | 来るな | ここ見て |
| セキュリティ | ❌ | ❌ |
| SEO | 制御 | 最適化 |
| 攻防視点 | 情報隠しがち | 構造丸見え |
9. Recon / Red Team 視点での Sitemap
Sitemap は 情報収集の宝庫。
なぜか?
- サイトの全 URL 構造が載っている
- 普段リンクされていないページが含まれる
- 管理画面・API・旧ページが混ざることもある
実例
<loc>https://example.com/admin/login</loc>
<loc>https://example.com/api/internal/v1</loc>
<loc>https://example.com/old_backup</loc>
攻撃者視点では:
- Attack Surface Map
- URL 辞書
- Recon 初期フェーズの高速化
10. Sitemap のよくあるミス(実務あるある)
- robots.txt で Disallow した URL を Sitemap に載せる
- staging / dev 環境の URL を載せっぱなし
- 削除済みページが残る
- 認証前提 URL を公開
SEO 的にも、セキュリティ的にも事故りやすい
まとめ
Sitemaps は:
- 検索エンジンへの「公式案内図」
- クロール効率と SEO を大きく左右する
- robots.txt とセットで使うべき
- 攻防・Recon 視点では構造漏洩源になり得る
Sitemap はクローラーにとっての最短ルートであり、調査者にとってはサイト全体を一望できる地図である。