• ¡Welcome to Square Theme!
  • This news are in header template.
  • Please ignore this message.
مهمان عزیز خوش‌آمدید. ورود عضــویت


امتیاز موضوع:
  • 6 رای - 2.83 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
Title: نحوه تشخیص خزنده ی گوگل (Googlebot) با PHP
حالت موضوعی
#1

تا بحال فکر کرده اید که چگونه می توان خزنده های مختلف را از طریق برنامه نویسی تشخیص داد، در این مقاله سعی بر آن است تا خزنده ی Googlebot شرکت گوگل را شناسائی کنیم و در این مثال اگر خزنده گوگل نباشد متغیری را مقدار درست خواهیم داد که در واقع فرضا کار noindex ما را انجام دهد.

در کد زیر با استفاده از تابع gethostbyaddr می توانیم یک ip به تابع بدهیم و نام میزبان را دریافت کنیم.

با تابع gethostbyname هم می توانیم نام سایتی را به تابع بدهیم و Ip آن را دریافت کنیم.

با تابع stripos هم بررسی میکنیم که آیا googlebot در متغیر $name اتفاق افتاده است یا خیر؟
کد:
$do_noindex=0;



$ip= $_SERVER['REMOTE_ADDR'];

If (preg_match('/googlebot/i',$_SERVER['HTTP_USER_AGENT'])) {



   $name= gethostbyaddr($ip);

   $host= gethostbyname($name);

If ($host==$ip && stripos($name,'googlebot')!==false) {

   // valid Googlebot

   Echo '';

} else {

   // not actually Googlebot

   echo '';

   $do_noindex=1;

}

}

if ($do_noindex==1) {

   print "\n";

}


هیچ تفاوتی به یافتن خزنده ی گوگل با دیگر خرنده ها وجود ندارد فقط کافی است نام آن خزنده را بدانید برای مثال برای موتور بینگ نام خزنده، msnbot می باشد.



 
پاسخ
  


پرش به انجمن:


Browsing: