Как “правильно” определять гугльбота на PHP
Некоторое время назад на официальном блоге гугла для вебмастеров был размещен пост о том, как правильно распознавать гугльбота среди посетителей сайта. Сразу у меня родилась эта несложная функция на пхп.
Фактически, Мэт Катс намекнул, как правильно делать клоакинг по IP-адресу, но что-то мне подсказывает, что он немного-таки лукавит, и гугль может ходить и из других сеток.
Функция вот. Думаю, тему не палю, т.к. подобную методику, думаю, многие давно применяли.
function is_googlebot($ip=false)
// возвращает true или false
// $ip - айпишник либо можно без параметра, тогда берется REMOTE_ADDR
{
if ($ip===false) $ip = $_SERVER['REMOTE_ADDR'];
if (empty($ip)) return false;
$hostname = gethostbyaddr($ip);
if (strtolower(substr($hostname, -14)) !== '.googlebot.com') return false;
$ip2 = gethostbyname($hostname);
if ($ip===$ip2) return true;
return false;
}
Постоянная ссылка ·
Добавьте на news2.ru
Похожие записи:
- Динамические названия полей для защиты форм от глупых роботов
- Скоро услуги Google Apps for Your Domain станут платными
- Google App Engine - “запуск стартапа стал ещё проще”
- Делаем кнопку для Google Toolbar
- Новые возможности в Google Apps for your domain



elliot said,
Февраль 1, 2007 @ 04:08
Спасибо за статью. Оцень кстати. Как раз встала проблема такого рода.
Mikhail said,
Февраль 3, 2007 @ 18:28
По совету Павла, ссылка по теме на ekstreme.com: PHP Search Engine Bot Authentication
Az есьм Blog » Blog Archive » Как “правильно” определять гугльбота на PHP said,
Апрель 4, 2007 @ 11:30
[…] Спалил эту тему http://turenko.com Она не нова, но раньше как-то о ней не писали, а тут я воспользуюсь что это не мой пост. Я ничего не палил […]