Реклама на сайте Advertise with us

301 редирект только поисковиков | Проверка поискового робота

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

форумъ сдохъ

С нами с 01.10.04
Сообщения: 4621
Рейтинг: 481

Ссылка на сообщениеДобавлено: 15/11/18 в 18:09       Ответить с цитатойцитата 

Роскомнадзор забанил домен. Если просто редиректить на новый, то через 3 месяца зеркало забанят вновь. Мысль: редиректить (чтоб передать вес новому домену) только поисковых ботов.
Найти простой скрипт мне не удалось, сам удивился. (1, 2, 3) Языков не знаю, накидал "методом тыка" файл.
Код:
<?php

// прописываем чего хотим, если обращается проверенный поисковик
function spiders() {
   header("HTTP/1.1 301 Moved Permanently");
   header("Location: https://domain.new". $_SERVER["REQUEST_URI"]);
   exit();
}

// прописываем чего хотим, если - не поисковик
function no() {
   header("HTTP/1.1 403 Forbidden");
   echo "Account suspended for non-payment.";
   exit();
}


// запоминаем юзерагент
$ua = $_SERVER["HTTP_USER_AGENT"];
// если юзерагент есть и соответствует боту поисковика, то
if (isset($ua) && preg_match('/googlebot|-google|yandex|Mozilla|bingbot/si',$ua)) {
   
   // опеределяем айпи
   $ip = $_SERVER['REMOTE_ADDR'];
   $ipfile = file('ip.txt', FILE_IGNORE_NEW_LINES);
   $banfile = file('ban.txt', FILE_IGNORE_NEW_LINES);
      // если мы уже проверяли и знаем этот айпи, как поисковика, то выполняем задачу
      if (in_array($ip, $ipfile)) {
         spiders();
      }
      // если знаем этот айпи, как самозванца, то выполняем заглушку
      elseif (in_array($ip, $banfile)) {
         no();
      }
      // иначе проверим хост этого кадра https://support.google.com/webmasters/answer/80553?hl=ru
      else {
         $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
         // если хост опознаем, как поисковика, то запишем ("для прикола" (С)) его и, что важнее, запишем его ip, чтоб не проверять в следующий раз + выполним задачу
         if (preg_match('/(googlebot\.com|google\.com|yandex\.(ru|com|net|)|msn\.com|mail\.ru|paranoik\.org)$/si',$hostname)) {
            file_put_contents('hostname.txt', $hostname . PHP_EOL, FILE_APPEND);
            file_put_contents('ip.txt', $ip . PHP_EOL, FILE_APPEND);
            spiders();
         }
         // если кадр лишь маскируется под поисковик - запишем его айпи
         else {
            file_put_contents('ban.txt', $ip . PHP_EOL, FILE_APPEND);
            no();
         }
      }
}
else no();

?>


"|Mozilla" и "|paranoik\.org" тут для того, чтоб протестировать на себе, в конечном файле - удалить.
Даже не поленился комментов наделать, чтоб доступно всем было icon_cool.gif

Тут важна проверка ботов по host, ибо юзерагент подделают, а списки айпишников поисковиков актуальных не бывает.



Топик для таких же, кто не нагуглит решения, для какой бы цели оно не было +

Покритикуйте? Интересует не в плане красоты/оптимальности (что не исключается, конечно), а если чего как не учел.. Например, находил, что gethostbyaddr() будет тормозить, если регулярно задействовать, потому прописал, чтоб проверенные айпишники в файл записывалиьсь...

2
 



С нами с 21.02.12
Сообщения: 63
Рейтинг: -12

Ссылка на сообщениеДобавлено: 20/11/18 в 08:05       Ответить с цитатойцитата 

Смотри тему. Яндекс. Запрос "проститутки" =213. Там народ отлично с этим справился с помощью под доменов. В выдаче один домен а по факту поддомен. Найдёшь ответ расскажи.

0
 



С нами с 19.07.03
Сообщения: 370
Рейтинг: 267

Ссылка на сообщениеДобавлено: 27/01/21 в 05:11       Ответить с цитатойцитата 

Может кто знает как средиректить всех, кроме поисковых ботов?
Ботам показать страничку, остальных средиректить.

А с этим точно будет

0
 



С нами с 28.02.03
Сообщения: 8529
Рейтинг: 1609

Ссылка на сообщениеДобавлено: 27/01/21 в 07:37       Ответить с цитатойцитата 

RewriteEngine on

RewriteCond %{HTTP_USER_AGENT} googlebot|yahoobot|microsoftbot [NC]
Redirect 301 / http://www.somesite.com/

как то так

2
 



С нами с 19.07.03
Сообщения: 370
Рейтинг: 267

Ссылка на сообщениеДобавлено: 27/01/21 в 14:38       Ответить с цитатойцитата 



Спасибо! А с проверкой по ИП не обязательно? Может на пхп есть что то более сложное, но понадежнее чтобы точно бота не средиректило?

Задача средиректить сюрферов, но ботам показывать номальную страничку.

А с этим точно будет

0
 



С нами с 29.11.14
Сообщения: 254
Рейтинг: 575


Передовик Master-X (01.02.2021) Передовик Master-X (16.02.2021) Передовик Master-X (01.04.2021) Передовик Master-X (16.04.2021) Передовик Master-X (16.06.2022) Ветеран трепа Master-X (01.12.2022)
Ссылка на сообщениеДобавлено: 27/01/21 в 15:19       Ответить с цитатойцитата 

Текст этого сообщения доступен только зарегистрированным пользователям.

3
 



С нами с 19.07.03
Сообщения: 370
Рейтинг: 267

Ссылка на сообщениеДобавлено: 27/01/21 в 16:08       Ответить с цитатойцитата 

xjam писал:
Скрипт, который определяет бота по айпи и делает обратный реверс для проверки ип тоже, более-менее надежно, свой, дарю.

функция checkBot вернет ОК если это не бот, имя бота если это бот, ну и FAILED если кто-то просто подменил юзер-агент на гуглбота,
там не все боты а самые основные так что добавишь свои, шли обратно буду рад дополнить


Круто!

Из недостающих ботов я так понимаю остаються:
Googlebot-Image
Googlebot-Video
yahoobot
microsoftbot
Slurp - (Slurp Bot)
DuckDuckBot
ia_archiver

И с учетом моих 0,00015 знаний в пхп, что надо добавить чтобы если не бот то редиректило простого юзера на указанный урл?

А с этим точно будет

0
 



С нами с 29.11.14
Сообщения: 254
Рейтинг: 575


Передовик Master-X (01.02.2021) Передовик Master-X (16.02.2021) Передовик Master-X (01.04.2021) Передовик Master-X (16.04.2021) Передовик Master-X (16.06.2022) Ветеран трепа Master-X (01.12.2022)
Ссылка на сообщениеДобавлено: 29/01/21 в 00:13       Ответить с цитатойцитата 

Текст этого сообщения доступен только зарегистрированным пользователям.

Последний раз редактировалось: xjam (30/01/21 в 11:11), всего редактировалось 1 раз

3
 



С нами с 29.11.14
Сообщения: 254
Рейтинг: 575


Передовик Master-X (01.02.2021) Передовик Master-X (16.02.2021) Передовик Master-X (01.04.2021) Передовик Master-X (16.04.2021) Передовик Master-X (16.06.2022) Ветеран трепа Master-X (01.12.2022)
Ссылка на сообщениеДобавлено: 29/01/21 в 00:25       Ответить с цитатойцитата 

checkKillBadBot функция для проверки бота на подделку, если нужно еще по именам пропускать ботов, как утку, то делаем так

Код: [развернуть]

3
 



С нами с 19.07.03
Сообщения: 370
Рейтинг: 267

Ссылка на сообщениеДобавлено: 29/01/21 в 16:15       Ответить с цитатойцитата 

По итогу xjam очень помог разобраться. Респектос smail54.gif

А с этим точно будет

1
 



С нами с 04.12.16
Сообщения: 3571
Рейтинг: 1289


Передовик Master-X (16.09.2019) Передовик Master-X (16.08.2020) Передовик Master-X (01.10.2020) Передовик Master-X (16.10.2020) Передовик Master-X (01.12.2020) Ветеран трепа Master-X (16.12.2020)
Ссылка на сообщениеДобавлено: 29/01/21 в 16:48       Ответить с цитатойцитата 

ммм, а вот интересно, ркн использует ботов для чека доменов? допустим, тогда зачем ботов поисковиков редиректить\нередиректить? или если смотрят глазами, то как они увидят что-то иное, не то, что по задумке реальные юзеры должны видеть icon_rolleyes.gif

0
 



С нами с 29.11.14
Сообщения: 254
Рейтинг: 575


Передовик Master-X (01.02.2021) Передовик Master-X (16.02.2021) Передовик Master-X (01.04.2021) Передовик Master-X (16.04.2021) Передовик Master-X (16.06.2022) Ветеран трепа Master-X (01.12.2022)
Ссылка на сообщениеДобавлено: 29/01/21 в 23:57       Ответить с цитатойцитата 

Текст этого сообщения доступен только зарегистрированным пользователям.

Последний раз редактировалось: xjam (30/01/21 в 11:11), всего редактировалось 1 раз

1
 



С нами с 04.12.16
Сообщения: 3571
Рейтинг: 1289


Передовик Master-X (16.09.2019) Передовик Master-X (16.08.2020) Передовик Master-X (01.10.2020) Передовик Master-X (16.10.2020) Передовик Master-X (01.12.2020) Ветеран трепа Master-X (16.12.2020)
Ссылка на сообщениеДобавлено: 30/01/21 в 10:49       Ответить с цитатойцитата 

xjam: ну тут какбы логично... я просто не вкурил мысль тс-а про редирект только поисковых ботов, в чем смысл если через какое-то время новый домен вылезет в топ то его аналогично пришибут без этой мышиной возни со скриптами, и в чем обратная мысль бандераса- средиректить с домена всех кроме ботов, т.е. есть домен с кучей трафа который надо отсеять или что?

0
 



С нами с 29.11.14
Сообщения: 254
Рейтинг: 575


Передовик Master-X (01.02.2021) Передовик Master-X (16.02.2021) Передовик Master-X (01.04.2021) Передовик Master-X (16.04.2021) Передовик Master-X (16.06.2022) Ветеран трепа Master-X (01.12.2022)
Ссылка на сообщениеДобавлено: 30/01/21 в 11:10       Ответить с цитатойцитата 

Текст этого сообщения доступен только зарегистрированным пользователям.

0
 



С нами с 04.12.16
Сообщения: 3571
Рейтинг: 1289


Передовик Master-X (16.09.2019) Передовик Master-X (16.08.2020) Передовик Master-X (01.10.2020) Передовик Master-X (16.10.2020) Передовик Master-X (01.12.2020) Ветеран трепа Master-X (16.12.2020)
Ссылка на сообщениеДобавлено: 30/01/21 в 11:31       Ответить с цитатойцитата 

xjam: нечто подобное xurl делал, а потом написал в личке что закончил с адалтом, прибил сервак со всеми доменами и больше на связь не выходил... а там интересные доменчики были под ркном, на них только-только гугл начал наливать...
лично я считаю так- ну забанит и забанит, не велика беда, кому надо тот под впном зайдет, тем более народ ща грамотный, ну и никто же не запрещает в описалово или тайтл воткнуть юзай впн чтоб посмотреть отменную нуху icon_razz.gif

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »