Определение поисковых роботов средствами PHP

[Удален]
13159

Задача заключается в том, чтобы не инклюдить определенный php-код (а именно код баннерной крутилки), если страница запращивается поисковиком...

пока кроме тупой проверки $_SERVER['HTTP_USER_AGENT'] на наличие 'google','yandex' и т.д. ничего в голову не приходит...

Возможно есть другие варианты? Кто что посоветует?

K
На сайте с 31.01.2001
Offline
737
#1

Во-первых, PHP-код поисковики и так не увидят, про него знает только сторона сервера.

Во-вторых, ненужный HTML-код можно закрыть от Яндекса и Рамблера в <noindex>

Ну а самый простой способ клоачить, действительно по User-agent.

Выделенные полосы в Москве (http://www.probkovorot.info) привели к снижению скорости до 23%.
Z
На сайте с 08.06.2008
Offline
9
#2

А есть у кого список юзер-агентов ботов?

alger
На сайте с 29.05.2008
Offline
51
#3

Заключите код банерной крутилки в <noindex></noindex> и на все теги ссылки <a> добавте параметр rel="nofollow". Первый прием исключит индексацию блока кода для Яндекса, а второй запретит передачу PR от вашей страницы на ссылающуюся.

То, о чем вы пишете - это клоакинг (cloacking). Если этот прием будет обнаружен (а это не сложно обнаружить) однозначно получите бан. Вам это надо?

"People fail forward to success." Mary Kay Ash
[Удален]
#4

Не, вы немного не поняли, вопрос не в noindex

мне не нужно закрывать от индексации код, который сгенерит баннерка.

Опишу более подробно:

Допустим, есть у нас файл index.php

В нем есть к примеру подобное:

include('banner.php');

Т.е. инклюдится скрипт, который выводит сам баннер. Понятно, что загнать в noindex сгенеренный им код - не проблема. Но мне необходимо просто НЕ инклюдить этот banner.php. Делается это не для того, чтобы закрыть этот кусок от индексации, а для того, чтобы снизить нагрузку на сервер. Поскольку когда приходит бот какого-либо поисковика, и кроме, собственно, контента самого сайта, грузит еще и баннеры, что пагубно влияет на производительность сервера в данный момент.

да. что касается клоакинга, не сразу обратил внимание... В принципе да, это действительно в какой-то степени клоакинг, но на самом деле преследуются только положительные цели, которые я описал выше.

alger
На сайте с 29.05.2008
Offline
51
#5
В принципе да, это действительно в какой-то степени клоакинг, но на самом деле преследуются только положительные цели, которые я описал выше.

А вы разве не знаете, что хорошими делами прославиться нельзя 😆

Проблему надо решать в корне. А что вы будете делать, если посещаемость вашего ресурса повысится? Выборочно показывать банер каждому третьему? Смените хостинг или перенесите сайт на качественный хостинг, если вы на данный момент используете свой. Это не дорого стоит.

Z
На сайте с 08.06.2008
Offline
9
#6

А как они определят, что что-то скрывают от бота? По стуку?

[Удален]
#7

Откровенно говоря, я не вижу смысла решать проблему железками, если это можно сделать софтово. На странице до 4-5 рекламных тизеров, в индекс за 20 минут "бота на сайте" попадает около 10 тысяч страниц. Вместе с этим, как вы понимаете, отдается ненужных 50000 показов. Кроме того, БД, собирающая статистику баннерки, получающая 50+ тысяч новых записей - это тоже не есть гуд. Мало того, статистика отражается неверная, поскольку реклама, показанная поисковикам - не реклама (хотя это конечно можно решить внутри самой баннерки при желании).

В общем, сильно много лишних разговоров, итак, еще раз обрисую проблему:

1) Определение средствами PHP поискового бота, кроме варианта проверки вхождения слов yandex/google/etc. в user-agent. Если такой способ - самый разумный, можно ли где-то получить список user-agent поисковых роботов?

2) Клоакинг. Может ли ПС счесть подобную ерунду за клоакинг? Баннерная система работает на том же сервере, что и сам основной ресурс. Крутится на поддомене основного домена, типа ad.domen.com

Z
На сайте с 08.06.2008
Offline
9
#8

юзай такую вот *** короче

if ( strstr($_SERVER['HTTP_USER_AGENT'], 'Yandex') ) { $bot='Yandex';}

elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Googlebot') ) {$bot='Google';}

.............

и всё будет *****

[Удален]
#9

в общем понятно, т.е. решение предложенное мною же в начале ветки было самым разумным.

Всем спасибо за участие в дискуссии!

duddy
На сайте с 09.01.2007
Offline
152
#10

Поисковые Боты

мож каму интересно будет!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий