2ページ目以降のクローラ拒否
2010-03-01-3
[Maintenance][Programming]
検索とのマッシュアップ系サイトにて、2ページ目以降のクローラ拒否処理を標準装備。
クローラ大量来襲時に外部APIを呼ぶ回数を減らしてサーバを保護。
例えばこんな感じ:
$start がページを表す。 $start == 1 が1ページ目。それ以上だと2ページ目以降。
robots.txt や .htaccess だとうまく書けないので。
というか、URL設計のミスなんだけど今更なので。
クローラ大量来襲時に外部APIを呼ぶ回数を減らしてサーバを保護。
例えばこんな感じ:
#!/usr/bin/perl use CGI; ... if ($start > 1 and $q->user_agent() =~ /bot|slurp|craw|spid/i) { print $q->header(-charset => 'UTF-8'); print qq(<html><head><meta name="robots" content="noindex,nofollow"></head><body></body></html>\n); exit; }
$start がページを表す。 $start == 1 が1ページ目。それ以上だと2ページ目以降。
robots.txt や .htaccess だとうまく書けないので。
というか、URL設計のミスなんだけど今更なので。
この記事に言及しているこのブログ内の記事