noindexディレクティブをrobots.txtに?

当ブログにお問い合わせいただいたのですが、お問い合わせくださった方のご入力メールアドレスに不備があったようで、私からの回答メールが戻ってきてしまう状態でして…。ですので、(ちょうど面白い事案だったのでせっかくですのでご紹介も兼ねて)ここに記載することでご回答とさせていただければと思います。

山

ふわふわ

お問い合わせ内容

私が「noindexとrobots.txtの因果関係」において、robots.txt内でのnoindexディレクティブの記載について以下のように注意書きをしておりました。

※ 2017年現在、Googleはrobots.txt内でnoindexを書き込むことをサポートしなくなっています。いつ機能が無くなるかも分かりませんので、現在はrobots.txtにnoindexのシグナルを送ることは非推奨とお考えください。

この件に関しまして、そもそもrobots.txtにnoindexディレクティブの記載が出来ることを初めて知った上で、機能している、していないの根拠は何か?というお問い合わせでした。

“この内容を見る限り、以前は本当に機能していた方法ということでしょうか。また、2017年現在サポートしなくなっている、というのは何を根拠とされているのか気になりました。”

つまり、noindexディレクティブは、metaタグとHTTPレスポンスヘッダーの2つの方法以外にrobots.txtでの記載も(今でも)出来るのか、という内容です。このことについて私の見解をご回答申し上げたいと思います。

ふわふわ

回答内容として

まず私のブログでの記載に関しまして、結論から申し上げます。

もともと公式にrobots.txt内でのnoindexディレクティブはサポートされているわけではありませんでしたが、私も一旦記事で書いてしまったので、(2017年現在で今後どうなるかも分からないため)注意書きとして追記した次第です。これが正直なところでございます。

と言いますのも、Google Developersのrobots.txt仕様では、正式にサポートしている(というよりも明記している)ディレクティブは、以下3つです。

  • disallow
  • allow
  • sitemap

ですので、noindexに関しては正式にはサポートはされていないという解釈をしました。別の言い方をすれば、(たとえ今サポートされていても)いつサポートされなくなったところで文句は言えない、という解釈です。

しかし、「robots.txt ファイルに誤りがある場合や、サポートされていないディレクティブを使用した場合はどうなりますか?」という質問に関しては、以下のように記載されており、robots.txtは柔軟に読み取ってくれることも示唆しています。

ウェブクローラは高度な柔軟性を備えており、通常は、robots.txtファイルに小さい誤りがあっても影響を受けません。一般に、起こりうる最悪の事態は、正しくないまたはサポートされていないディレクティブが無視されることです。覚えておいていただきたいのは、Googleはrobots.txtファイルを解釈するときに書かれていない意図までを読み取ることはできないということです。Googleは、取得したrobots.txtファイルを解釈することしかできません。ですが実際には、robots.txtファイルに問題がある場合でも、たいていは簡単に解決できます。

引用)よくある質問|Google Developers

また、Search Engine Landでも同様のことを伝えています。

Maybe: Noindex in robots.txt
Noindex in robots.txt is not officially supported, but it may work to remove pages from the index. The problem I have with this method is that it still tells people where they shouldn’t look, and it may not work forever or with all search engines.

The reason I say this is a “maybe” is that it can work and could actually be combined with a disallow in robots.txt, unlike some other methods which don’t work if you disallow crawling (which I will talk about later in this article).

引用)Search Engine Land

「robots.txtでのnoindexは公式サポートされていませんが、機能しています。ただいつどうなるか分からないし、全ての検索エンジンに適用されるとは限らない」という主旨のことが記載されています。

ですので、確実にnoindexを行いたい場合は、やはりページ単位でmetaに入れ込む手法か、HTTPリクエストでnoindexヘッダーを返すほうが正確かな、と考えています。

100%明確な回答になっているか分かりませんが、これが現段階での私の見解となりますので、K様どうぞ宜しくお願いします。