Закрыть сайт всем кроме робота яндекса, возможно?

Статус
В этой теме нельзя размещать новые ответы.

carlitoz

Гуру форума
Регистрация
22 Мар 2008
Сообщения
346
Реакции
56
Собственно сабж. Возможно ли закрыть всем доступ кроме роботов яндекса? То есть при заходе на страницу пользователь ее не видел с помощью скрипта какого-нибудь.. например, скрипт определяет, если это браузер, то выводиться страница "извините страница перемещена", а если яндекс, ну и можно гугл, то страница доступна?
 
Собственно сабж. Возможно ли закрыть всем доступ кроме роботов яндекса? То есть при заходе на страницу пользователь ее не видел с помощью скрипта какого-нибудь.. например, скрипт определяет, если это браузер, то выводиться страница "извините страница перемещена", а если яндекс, ну и можно гугл, то страница доступна?
Это называется клоакинг :)
За это тебя все поисковики забанят, кто то раньше кто то позже. Очень несоветую.
 
PHP:
<?php
/* -------------- Клоакинг по User-Agent -------------- */
// Определение поискового робота

$userAgent = strtolower($_SERVER['HTTP_USER_AGENT']);

if (substr_count($userAgent, 'crawler') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'yandex') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'webalta') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'mail.ru') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'googlebot') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'aport') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'rambler') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'yahoo') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'stackrambler') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'search') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'indexer') > 0) $isCrawler = 1;
else if (substr_count($userAgent, 'cuill.com') > 0) $isCrawler = 1;

if ($isCrawler)include "doorway.html"; else include "index.html";

?>
PHP:
<?php
/* -------------- Клоакинг по IP-адресам -------------- */
$isCrawler = 0;

// Определение IP пользователя

$strRemoteIP = $_SERVER['REMOTE_ADDR'];
if (!$strRemoteIP) {
$strRemoteIP = urldecode(getenv('HTTP_CLIENTIP'));
}
if (getenv('HTTP_X_FORWARDED_FOR')) {
$strIP = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_X_FORWARDED')) {
$strIP = getenv('HTTP_X_FORWARDED');
}
elseif (getenv('HTTP_FORWARDED_FOR')) {
$strIP = getenv('HTTP_FORWARDED_FOR');
}
elseif (getenv('HTTP_FORWARDED')) {
$strIP = getenv('HTTP_FORWARDED');
} else {
$strIP = $_SERVER['REMOTE_ADDR'];
}
if ($strRemoteIP != $strIP) {
$strIP = $strRemoteIP . ', ' . $strIP;
}

// Загрузка базы IP-адресов
$ipbase = file("iplist.txt");

// Проверка
foreach ($ipbase as $ip) {
// Вот он - робот!
if (eregi("$strIP",$ip)) {$isCrawler = 1;}
}

if ($isCrawler) include "doorway.html"; else include "index.html";
?>
 
Через .htaccess

RewriteEngine On

RewriteCond %{HTTP_USER_AGENT} !^yandex.* [NC,OR]

RewriteCond %{HTTP_USER_AGENT} !^googlebot.* [NC,OR]

RewriteCond %{HTTP_USER_AGENT} !^.*gaisbot.* [NC,OR]

RewriteCond %{HTTP_USER_AGENT} !^rambler.* [NC,OR]

RewriteCond %{HTTP_USER_AGENT} !^aport.* [NC,OR]

RewriteCond %{HTTP_USER_AGENT} !^metacrawler.* [NC,OR]

RewriteCond %{HTTP_USER_AGENT} !^msnbot.* [NC,OR]

RewriteCond %{HTTP_USER_AGENT} !^.*crawler.* [NC,OR]

RewriteRule ^/$ - [L,R]

Поисковикам открыть, пользователям закрыт. Можно только yandex оставить если есть желание...
 
зачем такие хитрые методы, проще просто закрыть от индексации для робота гугла роботсом
 
опа, раньше слышал про клоакинг, но не знал, что за зверь..хм.. вот с банном это не то что хотелось бы:(

ant1-pa, мне нужно боту яндекса скормить огромную пачку ссылок. Думал сделать несколько страничек на моих СДЛ, чтоб пользователи вообще не вкурсе были, что есть такие страницы. Так как сайты на WP, думал пустить новую запись, которая автоматически пингуется на список урлов. Ну вобщем, не вариант..(
 
опа, раньше слышал про клоакинг, но не знал, что за зверь..хм.. вот с банном это не то что хотелось бы:(

ant1-pa, мне нужно боту яндекса скормить огромную пачку ссылок. Думал сделать несколько страничек на моих СДЛ, чтоб пользователи вообще не вкурсе были, что есть такие страницы. Так как сайты на WP, думал пустить новую запись, которая автоматически пингуется на список урлов. Ну вобщем, не вариант..(

Сделайте проще - создайте страницу, но не делайте на нее никаких ссылок со своего сайта, добавьте страницу в соц. сети + руками в addurl яндекса, проиндексирует - удалите и все. Пользователи не узнают :)
 
Гыыы... Есть способ намного проще: узнаем IP поисковиков (поисковика) и баним все диапозоны, кроме этих IP. Как сделать есть много статей, гугли
 
Гыыы... Есть способ намного проще: узнаем IP поисковиков (поисковика) и баним все диапозоны, кроме этих IP. Как сделать есть много статей, гугли
что и делает мой второй пример. IP-ы загружаются с файла iplist.txt. если бот - doorway.html, если юзер - index.html
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху