ページ以外の画面が検索エンジンのロボットにクロールされて検索結果に出てしまうというのを防ぐ.
1.問題Googleでは,PyukiWikiの長いURLのCGIページでもHTMLと同じように普通にインデックス化してくれる. これは良いのだが,いくつかうちのサイトのページを検索していると,まずい事例が見つかった.Googleの検索結果に,以下のような「凍結編集画面(cmd=adminedit)」や「差分表示画面(cmd=diff)」のURLが表示されていた.
http://kamoland.com/wiki/wiki.cgi?cmd=adminedit&mypage=mod_cache%A4%C7Wiki(CGI)%A4%CE%B9%E2%C2%AE%B2%BD http://www.rensa.info/wiki/wiki.cgi?cmd=diff&mypage=%A5%B2%A1%BC%A5%E0%A5%B5%A1%BC%A5%D0%A4%C7%A4%CEdefunct% 一般の人が検索結果を見てこんなページに飛んでくるのは,困るんですけど...
2.対策GoogleのWeb管理者ガイドを調べたところ,
によると,インデックス化して欲しくないページには,以下のMETAタグを埋めれば良いようだ. <META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW"> 今回の2画面だけでなく,cmd=xxxのURLは全て検索エンジンの対象から除外して良いはずだ,という考えで,以下の対策を行った. スキンファイル(0.1.5ならpyukiwiki.skin.ja.cgi)の中のHTMLヘッダ部分を出力している箇所に,こういう内容を追加する. if (!$editable && !$admineditable) { print ' <meta name="robots" content="noindex, nofollow">'. "\n"; } これでめでたく解決した. あとこの内容は特にGoogleに限らないはずなので,他の検索エンジンのROBOTが編集ページや凍結ページを収集してインデックス化してしまうのも,防げるのではないかと期待はできる. (他の検索エンジンを普段使っていないので,実際には未確認) |