noindexメタタグが使えないページをインデックスさせない方法とは? | ひとりSEO担当者の疑問に答えます

SEO
自己紹介
yu-ta(ゆーた)26歳、会社員 PC.スマホ周辺機器やスマート家電など ガジェットを使って スマートな生活を送っています。 このサイトでは管理人おすすめの 最新の便利ガジェット情報や お得に買えるセール情報を中心に 発信しております。
自己紹介
yu-ta(ゆーた)26歳、会社員 PC.スマホ周辺機器やスマート家電など ガジェットを使って スマートな生活を送っています。 このサイトでは管理人おすすめの 最新の便利ガジェット情報や お得に買えるセール情報を中心に 発信しております。

ひとりで頑張るSEO担当者さんの悩みに答える本連載。今回の質問は「noindexメタタグが使えないページをインデックスさせない方法とは?」です。この回答は「X-Robots-Tagを使いましょう」です。

「noindexメタタグが使えないページをインデックスさせない方法とは?」に対する回答は、
「X-Robots-Tagを使いましょう」です

ログイン画面もインデックスさせたくない

今回の相談内容は検索流入を増やしたいのではなく、検索にヒットさせたくないというものです。ペンネーム「ひろぴ」さんが寄せてくださいました。「ひろぴ」さんのサイトはログインしないとコンテンツを見ることができないサイトで、ログイン後のコンテンツについては検索避けができているとのこと。ただし、ログイン画面がインデックスされてしまったという状況で、そのログイン画面も検索避けしたいのだそうです。

ログイン画面をインデックスさせないためにJavaScriptで生成する形にしている(詳しい実装方法は質問に書かれていませんでした)とのことですが、それでもインデックスされてしまったのだそうです。「ひろぴ」さんはJavaScriptでnoindexメタタグを挿入することがGoogle非推奨であることから、それ以外の方法でnoindexを指定する方法を望んでおられます。

X-Robots-Tagを使う

ログインページを生成するJavaScriptをHTMLページに記述したり、HTMLページから外部JavaScriptを呼び出したりしているのであれば、そのHTMLページにnoindexメタタグを書き込んでおけばよいはずです。おそらく、そうはいかない何らかの事情がおありなのでしょう。

となれば、HTTPレスポンスヘッダーにnoindexディレクティブを追加する「X-Robots-Tag」を使用するのがいいでしょう。詳しい設定方法はこのコーナーの過去記事「PDFを検索にヒットしないようにするには?」にあります。JavaScriptを読み込む大元のページにHTTPリクエストがあったとき、HTTPレスポンスヘッダーに「X-Robots-Tag: noindex」を返すようにしておけば、noindexメタタグをページに挿入した場合と同様の効果があります。

外部JavaScriptを呼び出す形であれば、念のため、そのJavaScriptファイルのクロールをrobots.txtで禁止しておくか、またはX-Robots-Tag: noindexを返すようにしておくといいかもしれません。

まとめ

robots.txtによる検索避けはあくまでも「クロールしないでね」という指定であり、「検索結果に出さないでね」という指定ではないため、不完全な形ながら検索結果に表示される可能性があります。

今回の質問のように検索結果に表示させたくない場合にはnoindexディレクティブを使うのがベストプラクティスです。何らかの事情でHTML内にnoindexメタタグを書き込めない場合には、HTTPレスポンスヘッダーでX-Robots-Tagを返すことで「インデックスせず検索結果にも出さないでね」という指定をすることができます。

P.S.
本コーナーでは、読者の質問にお答えしています。誰にも聞けずに困っていること、現場で感じるふとした疑問など、どしどし質問をお寄せください。

◇◇◇

ひとりSEO担当者の疑問や悩みを募集しています。応募したい方は以下からお願いします。

タイトルとURLをコピーしました