@stephania Вы можете смотреть USER_AGENT из глобального массива $_SERVER каждый робот отдает специфический USER_AGENT, например вот проверка на Google Bot:
1 2 3 4 5 6 |
<?php if(strstr(strtolower($_SERVER['HTTP_USER_AGENT']), "googlebot")) { // Гугл бот } |
Можно также просто проверять бот или нет через регулярные выражения(простая проверка большинства популярных ботов):
1 2 3 4 5 |
<?php if (preg_match('/apple|baidu|bingbot|facebookexternalhit|googlebot|-google|ia_archiver|msnbot|naverbot|pingdom|seznambot|slurp|teoma|twitter|yandex|yeti/i', $_SERVER['HTTP_USER_AGENT'])) { // бот } |
@stephania
В PHP, вы можете использовать функцию get_browser()
для получения информации о браузере, используемом пользователем. Эта функция обычно используется для определения типа браузера, версии и платформы пользователя, но она также может возвращать информацию о том, является ли браузер поисковым роботом.
Чтобы определить, является ли браузер поисковым роботом, вы можете использовать следующий код:
1 2 3 4 5 6 7 |
$browser = get_browser(null, true); if ($browser['crawler']) { // браузер является поисковым роботом } else { // браузер не является поисковым роботом } |
Обратите внимание, что этот метод не является надежным способом определения поисковых роботов, так как некоторые поисковые роботы могут изменять информацию о себе, представленную в HTTP-заголовках. Поэтому реком