Close

Запрет доступа к сайту по IP кроме поисковиков.

Доброго времени суток форумчане.

Подскажите пжл.,

Имею сайт, закрыл его доступ от всех стран кроме стран СНГ (11 стран) через SxGeo PHP.
В принципе все устраивает, работает отлично, фильтрует то что мне не надо.

Сейчас появилась необходимость все так же оставить открытые 11 стран СНГ, остальные закрыть, но оставить доступ для поисковых ботов (список я потом сам добавлю какой надо, к примеру для начала весь Google).

Мой рабочий код (весь код не буду приводить, что бы не засирать пост):

/-/-/-/-/-/-/-/-/-/-/
include_once($_SERVER[‘DOCUMENT_ROOT’]."/SxGeo.php");
$SxGeo = new SxGeo();
$ip=$_SERVER[‘REMOTE_ADDR’];
$country = $SxGeo->getCountry($ip);
unset($SxGeo);

if($country!==’AM’ and $country!==’AZ’ and $country!==’BY’ and $country!==’GE’ and $country!==’KG’ and $country!==’KZ’ and $country!==’MD’ and $country!==’RU’ and $country!==’TJ’ and $country!==’TM’ and $country!==’UA’ and $country!==’UZ’)
{ echo
header(‘Location: http://три татульки три тата’);
}
/-/-/-/-/-/-/-/-/-/-/

Как правильно определить User-Agenta Google и разрешить ему доступ к сайту?

Я так понимаю, что с одной стороны запретив доступ для всех, в том числе из США по IP, но разрешив доступ для User-Agenta Google я ничего не добьюсь, так как Бота Gogole отфильтрует еще до срабатывания разрешающего правила User-Agent.

Видел много решений, в том числе связанных с решением посредством htaccess , но данная схема завязана на 24 сайтах несколько лет назад и сейчас разгребать и разбираться в устройстве ну ни как нет ни времени ни желания )))))

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

Теоретически понимаю как и что необходимо сделать, но практически не получается.

Так себе понимаю, определить User-Agenta Бота, если это Бот, открываем страницу, если не Бот а человек, то выполнить условие по фильтрации IP.

Источник

Добавить комментарий