直前の記事「RewriteRule でリダイレクトする」でサイトのURLを変更した後、以前のURLにアクセスされても、not found がかえらないよう、新しいURLにリダイレクトする方法を書いた。
しかし、このままだと、以前のURLも検索エンジンから見ると生きたURLとなる(らしい)。以前の「http://www.liolion.info/Mx/」以下にアクセスしても、リダイレクトされ新しいURL「http://www.liolion.info/modx/」にたどり着くためだ。
実際、「/Mx」以下の削除依頼をしたのだが、それが拒否されてしまった(つまり生きているURLと認識されたため)。このままだと、やがて登録インデックスが多重になってしまう(と思うんだけど)。
ということで、「robots.txt」っつうのを書いて、「/Mx」以下はインデックスされないようにする。
Google のウェブマスターツールにログインすると、「robots.txt」を試せる機能がある。内容を書いて、実際にどういうふうに影響するかを試せるツールだ。
「診断」>「robots.txt」と進むとすでに「robots.txt」が存在するなら、その内容を表示する。この枠の中に、試したい内容を書いても、実際に自分のサイトにアップロードしている「robots.txt」には影響を与えない。つまり、内容を事前に試せるわけだ。
例えば、うちのばあい、「http://www.liolion.info/Mx」以下はすべてインデックスして欲しくないので、以下のように書く。
User-agent: Googlebot
Disallow: /Mx
「google」 だけでなく、他もブロックしたい場合は以下のように書く。
User-agent: *
Disallow: /Mx
そして、その下の枠には、登録URLが表示されているから、ここに実際にブロックしたい(つうか、robots.txtを作用させたい)URLを書いて「テスト」をクリック。つまりこんな風に
http://www.liolion.info/Mx/
すると下の方にメッセージがでる
2 行 ブロック : Disallow: /Mx
もし、ブロックされていないURLならば以下のようになる
許可済み
これで以前のURL「http://www.liolion.info/Mx」がインデックスされることを避けられる。
Googleの説明は以下に
Block or remove pages using a robots.txt file
追記
MODxでフレンドリURLにした場合「/index.php?id=54」などの形式のURLをインデックスに登録さないためには以下を追記する
Disallow: /index.php?*
Post a Comment