X-Robots-Tagを使用してインデックス制御やリダイレクトをする方法

以前、ドメイン移転をしたサイトに対して不自然なリンク警告が引き継がれるかどうか、という実験をした事がありました。
その記事を書いた後から「X-Robots-Tag リダイレクト」といったキーワードでの流入が増えました。

需要もあるのだろう、と思いましたので、X-Robots-Tagについて記事にしておこうと思います。
新しく登場した機能ではありませんが、役に立つ事もあるかも知れません。

METAタグが設置出来ないファイルのインデックスコントロールが可能

PDFファイルなど、METAタグの設置が出来ないがインデックスさせたくないファイルなどが出てくる可能性があります。

そういうファイルのインデックス制御はX-Robots-Tagを使うと簡単に出来ます。
WebサーバにApacheを使用している場合は、.htaccessへ以下の様な記述を行います。

sample.pdfをインデックスさせたく無い場合

<Files sample.pdf>
Header set X-Robots-Tag "noindex"
</Files>

sample.pdfをインデックスさせずリンク先も辿らせたくない場合

<Files sample.pdf>
Header set X-Robots-Tag "noindex,nofollow"
</Files>

Header set X-Robots-Tag “noindex,nofollow”
の中の部分はrobots METAタグと同じ内容が記述出来ます。
ですので、unavailable_afterについても使用可能です。

sample.pdfを2012年12月31日0時以降クロールとインデックスを終了させたい場合

<Files sample.pdf>
Header set X-Robots-Tag "unavailable_after: 31-Dec-2012 00:00:00 JST"
</Files>

※ 試してみたところインデックスから消えるまで約1日のズレがありました。

リダイレクトをさせつつリンクを辿らせない方法

冒頭に書いた不自然なリンクを受けたドメインの移転実験で使用した方法です。
リダイレクトさせるので、ユーザーの取りこぼしは防げますが、nofollow属性を付与する事によりリンク評価を渡しません。

ディレクトリ構造が同じ新ドメインへリンク評価を引き継がないリダイレクト方法

Header set X-Robots-Tag "nofollow"
RewriteEngine on
RewriteCond %{http_host} ^www.old.com
RewriteRule ^(.*) http://www.new.com/$1 [R=301,L]

http://www.old.com から http://www.new.com へ移転する方法です。
ドメイン内のディレクトリ構造などは一切変わらずに移転する時は、この記述を行います。

ページを指定してリダイレクトしリンク評価を引き継がない方法

Header set X-Robots-Tag "nofollow"
RewriteRule ^/oldindex\.html$ http://www.new.com/index.html [R=301,L]

oldindex.html から http://www.new.com/index.html へ移転する方法です。
特定のページをリダイレクトする場合はこの記述を用います。


通常のリダイレクト方法に
Header set X-Robots-Tag “nofollow”
を記述しているだけです。
注意点ですが、必要な時以外は基本的に記述しないようにしましょう。
間違えて記述する事でサイトに甚大な影響がある可能性があります。

それと、移転設定を行った後にFetch as Googleで、X-Robots-Tagの送信があるか、を確認しましょう。
Fetch as Googleでのx-robots-tag確認


補足として.htaccessの生成方法について記載しておきます。
.htaccessはただのテキストファイルです。
テキストエディタで「htaccess.txt」という名前のファイルを作成し(ファイル名は何でも良いのですが)必要な情報を記述してサーバーにアップロードします。
サーバー上で「htaccess.txt」のファイル名を「.htaccess」に変更します。

既にアップロードされている場合は、該当のファイルをダウンロードして追記して下さい。

今回の記事のまとめ

新しく登場した機能では無いのですが、METAタグが記述出来ないファイルのインデックス制御には便利な機能だと思いましたので改めて掘り下げてみました。

マニアックな機能だと思いますが、便利な場合もあるかも知れませんね。
お役に立てれば幸いです。

X-Robots-Tagに関する参考リンク
リダイレクトに関する参考リンク

※本ブログに記載されている情報は、私の見解に基づく場合が多々ございます。
 掲載記事を参考にした事による損害については、その責任を負いかねます。
 自己責任で、掲載情報を参考にして頂ければと思います。



記事の内容は気に入っていただけましたか?
もしも気に入って頂けましたら、下のボタンから共有をお願いします。
共有して頂けますと、運営者がとても喜びます。



“X-Robots-Tagを使用してインデックス制御やリダイレクトをする方法” への2件のフィードバック

  1. […] SEO Imagination!のX-Robots-Tagを使用してインデックス制御やリダイレクトをする方法という記事で使い方が詳しく解説されています。 […]

  2. […] 仕事のちょっとした用事で、あるyahoo関連サイトに掲載された被リンクにnofollowが入っているかどうかを調べることになりました。しかしこのサイト、一旦リンクはyahoo内のプログラムに飛ぶようになっており、そこから転送される仕様です。基本的に短縮URLなどプログラムによるリダイレクトでもSEOの被リンク効果はあるとマット・カッツも言っているようですが、(参考:http://www.suzukikenichi.com/blog/do-url-shorteners-pass-anchor-text-or-pagerank/)その情報にnofollowが入っているかは重要です。ということでその調べ方。一般的なaタグの場合はソースを見て<a href=”signin.php” rel=”nofollow”>sign in</a>のように記載してあるか調べればOKですよね。Googleのbotは、おそらくこのnofollowを見た時に、そのリンク先をnofollowとして扱って動くのでしょう。(詳しくはないです。違うと思いますが、ひょっとしてApacheがやっていたらごめんなさい)では、プログラムなどによる転送時はどうか?プログラムで転送する場合は、最終的に転送用のヘッダー情報をおくることになります。Googleのbotの動きを考えると、そのHTTPリクエストのヘッダー情報中にnofollowがあれば、そのリンクをnofollowとして扱うという動きになっているようです。じゃぁどんなヘッダーかというとX-Robots-Tagというものがあります。ここのnofollowやnoindexが入っていると、そのように扱われます。ということでHTTPリクエストのヘッダー情報を見ればいいのですね。Chromeでは、以下の手順で、全タブの通信時のヘッダー情報を見ることができます。1.Chromeの新規タブでchrome://net-internals/#eventsと入力してEnter2.別タブで開いているサイトを開き、調べたいリンクをクリックする3.1で開いていたタブに戻り、転送された時の通信情報を探す(下図参照)上記の中でURL_REQUESTを見つけてクリックすると、右側にその通信の中身が表示されます。リダイレクトをしている部分は、こんな感じです。t=91350 [st=75]        HTTP_TRANSACTION_READ_RESPONSE_HEADERS                       –> HTTP/1.1 302 Found                           Server: nginx                           Date: Sat, 04 Oct 2014 01:37:38 GMT                           Content-Type: text/html                           Content-Length: 1452                           Connection: close                           Cache-Control: private, max-age=0, no-cache                           P3P: policyref=”http://privacy.yahoo.co.jp/”&nbsp;                          Location: http://example.com/&nbsp;                          Cache-Control: private                           Vary: Accept-Encoding                           Content-Encoding: gzip                           X-Frame-Options: SAMEORIGIN                           X-Content-Type-Options: nosniff                           X-XSS-Protection: 1; mode=blockここからわかることは・302リダイレクトを使用している・X-Robots-Tagがないのでnofollowではないということです。もしX-Robots-Tagが入っていると、上記はこんな感じになっているはずです。                       –> HTTP/1.1 302 Found                           Server: nginx                           Date: Sat, 04 Oct 2014 01:37:38 GMT                           Content-Type: text/html                           Content-Length: 1452                           Connection: close                           Cache-Control: private, max-age=0, no-cache                           P3P: policyref=”http://privacy.yahoo.co.jp/”&nbsp;                          Location: http://example.com/&nbsp;                          Cache-Control: private                           Vary: Accept-Encoding                           Content-Encoding: gzip                           X-Frame-Options: SAMEORIGIN                           X-Content-Type-Options: nosniff                           X-XSS-Protection: 1; mode=block                           X-Robots-Tag: noindex,nofollow                           あまり情報がなかったので誰かの参考になるかと思い書いてみました。X-Robots-Tagについては、このあたりの方の情報が参考になりました。感謝。▼海外SEO情報ブログ 鈴木さんhttp://www.suzukikenichi.com/blog/x-robots-tag-via-php/▼SEO Imagination 伊藤さんhttp://holy-seo.net/blog/seo/x-robots-tag-index-and-redirect/ […]

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


コメントリンクを nofollow free に設定することも出来ます。

ページトップへ