サイトマップはインデックスさせる必要なし。X-Robots-Tagのnoindexでインデックス回避が可能

[レベル: 中級]

検索エンジンのために構成するサイトマップ ファイルをインデックスさせる必要はありません。
X-Robots-Tagnoindex を送信するとサイトマップが検索結果に出ないようできます。

サイトマップをインデックスさせる必要なし

Google の John Mueller(ジョン・ミューラー)氏が、次のようなリマインダーを Twitter に投稿しました。

XML サイトマップを対象にした “noindex” の X-Robots-Tag HTTP ヘッダー を使ってかまわない。サイトマップとして機能するために、サイトマップはインデックスされる必要はない。サイトマップは(インデックスさせるために作られた)HTML ページというよりも、むしろ(機械のために作られた)robots.txt のようなものだ。

通常のウェブページは、検索ユーザーに見つけてもらうために検索結果に出るようにクロール・インデックスさせます。
対して、サイトマップはインデックスさせる必要はありません。
検索結果でユーザーに見つけてもらうためのものではないからです。
検索エンジンが取得できさえすれば、それでいいのです。

※ここで言う「サイトマップ」は、検索エンジン用のサイトマップ(一般的には、XML 形式のサイトマップ)のこと。サイト内の地図としてユーザーに利用してもらうウェブページとして公開している(HTML 形式の)サイトマップではない。

そこで、ミューラー氏は X-Robots-Tag でサイトマップを noindex 処理することをアドバイスしたのです。

X-Robots-Tag で noindex を HTTP ヘッダーに出力する方法

X-Robots-Tag で noindex を HTTP ヘッダーに出力するには、たとえば、Apache 系のウェブサーバーであれば、.htaccess に次のように記述します(サイトマップのファイル名が sitemap.xml の場合)。

<Files sitemap.xml>
Header set X-Robots-Tag "noindex"
</Files>

サイトマップに対して、X-Robots-Tagnoindex が HTTP ヘッダーで送信されます。

HTTP ヘッダーに出力された X-Robots-Tag の noindex

サイトマップが検索結果に出たとしても実害はありません。
なので、気にならなければ無視できます。
現状でインデックスされていないのであれば、X-Robots-Tagnoindex をあらためて構成しなくてもいいでしょう。

ですが、無駄なものは検索結果に極力出したくないというのであればこの記事で説明したやり方を採用してみてください。

P.S.
同じ内容の記事を書いたことがあるのですが、9 年以上も前なので僕もリマインダー目的でもう 1 度書きました。😉