Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // используем так:
- $gb = googlebot_check();
- if ($gb == 1) {echo »Fuck off. User-Agent containing ‘googlebot’ != Googlebot!»;}
- /* Функция возвращает:
- 0 — если Юзерагент не содержит googlebot
- 1 — если Юзерагент содержит googlebot, но ип не проходит тест описанный выше. Это хитрые конкуренты, которые поставили себе юзерагент гугла.
- 2 — это на 99.99% гуглбот. Почему не 100%? Потому-что всякое бывает. От взлома DNS, до чего-то, о чем я даже не знаю.
- Те, кто прячется за клаудфлейр и другими подобными сервисами, не забывайте обновлять $_SERVER[‘REMOTE_ADDR’] в скрипте. Чтобы получать реальный ИП, а не ИП сервиса. Костыли можно найти в гугле для каждого сервиса.
- */
- function googlebot_check(){
- if ( false === stristr($_SERVER[‘HTTP_USER_AGENT’], ‘googlebot’) ) return 0;
- $hostname = gethostbyaddr($_SERVER[‘REMOTE_ADDR’]);
- if ( false === stristr($hostname, ‘googlebot’) ) return 1;
- if($_SERVER[‘REMOTE_ADDR’] != gethostbyname($hostname)) return 1;
- return 2;
- }
Advertisement
Add Comment
Please, Sign In to add comment