0

drupal で構築された大規模なコミュニティ Web サイトがあります。このサイトでは、Web サイトのコンテンツにアクセスする前に必須の年齢チェックがあります。

Cookie が存在するかどうかを確認します。存在しない場合は、年齢確認ページにリダイレクトされます。

現在、クローラーはこの部分で立ち往生し、年齢チェックにリダイレクトされ、Web サイト全体をクロールできないと考えられています。

誰もこれを前に持っていましたか?このようなものに対処する最善の方法は何でしょうか?

サンダー

編集

クローラーの問題の 1 つは、コミュニティの誰かが Facebook のウォールに何かを投稿すると、Facebook がページをクロールして画像と説明 (メタ タグで指定されている) を取得することですが、 facebook も年齢確認ページにリダイレクトされます。Facebook クローラーを追加すると、useragentcheck は機能しますか? もしそうなら、Facebookクローラーの正確な名前を知っている人はいますか?

以下の解決策は、私たちもネット上でクロスしたものです。そのリストに facebook クローラーを追加すると、この年齢確認ページで発生しているすべての問題が解決されます。

4

2 に答える 2

2

ユーザーエージェントを確認できますが、それがクローラーの場合は、ブラウザー/ユーザーが必要な Cookie を持っているかどうかを確認しません。

以下にサンプルを示します。

function crawlerDetect($USER_AGENT)
{
    $crawlers_agents = ‘Google|msnbot|Rambler|Yahoo|AbachoBOT|accoona|AcioRobot|ASPSeek|CocoCrawler|Dumbot|FAST-WebCrawler|GeonaBot|Gigabot|Lycos|MSRBOT|Scooter|AltaVista|IDBot|eStyle|Scrubby’;

    if ( strpos($crawlers_agents , $USER_AGENT) === false )
       return false;
}

// example

$crawler = crawlerDetect($_SERVER[’HTTP_USER_AGENT’]);

if ($crawler )
{
   // it is crawler, it’s name in $crawler variable
}
else
{
   // usual visitor
}
于 2009-08-19T10:22:43.180 に答える
0

Gary Keithには、訪問者 (ブラウザーやクローラーなど) のすべての属性をチェックするために使用できる php クラスがあり、このクラスはブラウザーとクローラーの完全な ini ファイルを定期的に自動的に更新します。試したことはありませんが、 drupal モジュールもあります。

于 2009-08-20T00:55:46.360 に答える