1

私の知る限り、

$_SERVER['REMOTE_HOST'] は「google.com」または「yahoo.com」で終了する必要があります。

しかし、それは最も確実な方法ですか?

他の方法はありますか?

4

8 に答える 8

9

ユーザー エージェントと IP アドレスで検索エンジンを識別します。詳細については、検索エンジンのスパイダーとウェブボットを識別する方法 を参照してくださいこのリストも注目に値します。ただし、ユーザー エージェント (またはリモート ホストでさえも) を必ずしも決定的なものとして扱うべきではありません。ユーザーエージェントは、実際には、相手側があなたに伝えていること以上のものではなく、もちろん自由にあなたに何かを伝えることができます。Googlebot になりすますコードを書くのは簡単です。

PHP では、これは と を見ることを意味し$_SERVER['HTTP_USER_AGENT']ます$_SERVER['REMOTE_HOST']

多くの検索エンジンがありますが、正直なところ、一般的に言えば、あなたが本当に気にかけているのはごくわずかです。Google と Yahoo を合わせると、ほぼすべての市場を占めています。しかしもちろん、それはあなたが何を達成しようとしているかによって異なります。

注:コンテンツに関しては、検索エンジンを通常のユーザーとは異なる方法で扱うように十分注意してください (Joel が言うところの「邪悪なハイフン サイト」のように) 。特に悪質なケースでは、これによりサイトがその検索エンジンから削除される可能性があります。それが起こらなくても、何かを期待してサイトにアクセスする一部のユーザーを遠ざける可能性があります。その後、代わりに「この記事を表示するには登録してください」というボックスが表示された場合は、直帰率が高いことに感謝します。

于 2009-05-27T14:48:44.517 に答える
8

まず第一に、通常のユーザー向けにサイトに含まれるコンテンツとは異なるコンテンツを検索エンジン ボットに提供するために、これを実行しようとしていないことを願っています。あなたがこれを行っていることを彼らが発見した場合、あなたのサイトはリストから完全に削除されます. そのリスクを理解している限り、通常、彼らが使用する固有のユーザー エージェントに関する情報を見つけることができます。

  • Googlebot の確認(確認したい場合は、ユーザー エージェント、リバース DNS を使用)
  • Yahoo のユーザー エージェントには「Slurp」が含まれます

ただし、Web スクレイパー (通常は動作が悪い) を作成する一部の人々は、ユーザー エージェント文字列を Google などの「正当な」クローラーと同じに設定します。ボットの IP アドレス/ホスト名を検索して、実際に Google/Yahoo/などから送信されていることを確認することで、これらをキャッチできます。ホスト名検索で何を探すべきかについての詳細情報 (この記事から):

  • Google クローラーは、crawl-66-249-70-244.googlebot.com のように googlebot.com で終わります。
  • Yahoo クローラーは、llf520064.crawl.yahoo.net のように、crawl.yahoo.net で終わります。
  • ライブ検索クローラーは、msnbot-65-55-104-161.search.msn.com のように search.msn.com で終わります。
  • Ask クローラーは、crawler4037.ask.com のように、ask.com で終わります。
于 2009-05-27T14:55:36.220 に答える
5

$_SERVER['HTTP_USER_AGENT'] を使用して、Googlebot または Yahoo! 啜る。

于 2009-05-27T14:49:23.893 に答える
2

クローラーが google.com から来ているとは思いませんし、そこから来るボットとして扱いたくない人も何人か知っています。あなたのサイトを検索するすべての人。

必要なことは、さまざまなボットの IP を確認することです。 http://www.google.com/support/webmasters/bin/answer.py?hl=ja&answer=80553

于 2009-05-27T14:53:06.803 に答える
1
$_SERVER['HTTP_USER_AGENT']

ここでさまざまなユーザー エージェント文字列を確認してください: http://www.user-agents.org/

于 2009-05-27T14:59:41.843 に答える
1

Google/Bing/Yahoo クローラーの IP アドレス -

http://myip.ms/info/bots/Google_Bing_Yahoo_Facebook_etc_Bot_IP_Addresses.html

于 2014-07-26T14:49:30.273 に答える
0

あなたが言及したような、よく知っていて動作するロボットでそれを行う最良の方法は、$_SERVER['HTTP_USER_AGENT']で見つけることができるユーザーエージェントによるものです。

于 2009-05-27T14:51:34.543 に答える
-1

私は何かを一緒にハッキングしましたが、$_SERVER['HTTP_USER_AGENT'] を調べて、それらが検索エンジン ドメインから来ているかどうかを確認する必要があります。

function is_crawlers() {

   $sites = 'Google|Yahoo|msnbot|'; // Add the rest of the search-engines 

   return (preg_match("/$sites/", $_SERVER['HTTP_USER_AGENT']) > 0) ? true : false;  

   }
于 2009-05-27T14:57:25.140 に答える