Открыть доступ только поисковикам

Зачем открывать поисковикам и закрывать от людей

Сразу скажу, что это противоречит политике поисковиков. Главное правило для хорошего сайта, по мнению поисковиков, это требование показывать сайт "как есть". Чтобы отдаваемое содержимое было одинаковое и для ботов и для пользователей.

Использование такого подхода может привести к бану сайта

Зачем открывать сайт для индексации ботам, но закрывать от посетителей.

Причина тут одна. Подготовить контент, который должен попасть в индекс (параллельнопишу о сервисе, который отправляет бота яндекса на сайт для моментальной /за 10 минут грозятся/ индексации указанных страниц), и в нужное время его открыть посетителям.

Как проверить доступность сайта боту Яндекса

Проверка осуществляется в Яндекс Вебмастере. Заходим в наш сайт и в меню выбираем "проверить урл". Забиваем адрес проверяемой страницы. Ждем около минуты и смотрим отчет. Код 200 ОК означает, что страница доступна для обработки. Важно- доступность к обработке не означает разрешение на индексацию.

Однако, повторюсь, следует учесть, что доступность может не означать разрешение к индексации. Ограничения по индексации заложены в файл robots.txt Следовательно, нужно и этот момент проверить. Тут так же поможет яндекс вебмастер, но уже в пункте "настройка индексирования" - "анализ robots.txt". Внизу будет "список урл". Сюда добавляем свой адрес страницы и смотрим ограничен ли к ней доступ для индексирования.

проверить доступность яндекс робота к индексации страницы

Поянение. Цифра 1 это к проверке ответа Яндекс сервера. Под 2 идет проверка на доступность к индексации. 

Но. И это ещё не всё. Может быть закрыта индексация на уровне кода мета тегами noindex (однозначный запрет на индексацию) и nofollow (запрещены переходы по ссылкам, на индексацию влияет но не запрещает её полностью). Проверяем. Открываем сайт. Правая кнопка мыши на любом месте. Выбираем "просмотреть код страницы" (не элемента!). Ищем метатеги. Поиск по тексту (контрл + f) "meta". И смотрим какие значения запрограммированы. Нас интересует, чтобы не было такого: meta name="robots" content="noindex" Нашли 

Нашли? Тогда страница индексироваться яндексом и гуглом не будет и в поиск, соответсвенно, не попадет. Устраните проблему!

Устранили? Теперь отправьте в индекс Яндекса с помощью сервиса getbot (после регистрации по ссылке попросите через поддержку тестовые деньги и произведите оплату купоном). Так бесплатно отправите сайт в поисковик Яндекс. Отправляйте главную страницу и пару страниц с новыми (обязательно только что опубликованными) материалами по максимальному тарифу (2 единицы или 4 рубля). Результат будет уже через 30 минут. Напишите результат в комментарии к этой публикации. В качестве "спасибо" за информацию поделитесь ссылкой на страницу в соц сети.

Возвращаюсь к теме о закрытии сайта пользователям и при том, чтобы поисковики могли его индексировать и обрабатывать.

Как реализовать

Реализуется всё довольно просто и эффективно. На уровне пользователей колдовать не будет - хлопот много, а толк не понятно будет или нет. Идем сразу на уровень доступа к ресурсу.

1. Открываем доступ только себе и поисковым ботам.

2. Закрываем доступ всем остальным.

Момент важный. Если у вас нет статического IP адреса, то доступ на сайт придется делать по схеме: войти на сайт на уровне хостинга (фтп или веб) - прописать свой текущий IP адрес в список разрешенных - войти на сайт.

Техническая реализация

Нам нужне файл .htaccess находящийся в корне сайта.

Вариант 1:

Перенаправление всех посетителей на другой сайт, за исключением одного IP (бывает полезно при веб-разработке)

ErrorDocument 403 http://linksfree.ru
Order deny,allow
Deny from all
Allow from 24.33.65.6

Только с указанного IP на сайт можно зайти. Соответсвенно, пишем свой IP адрес и адреса ботов яндекса и гугла. Сами адреса чуть ниже.

Вариант 2:

Тут на уровне доступа авторизованного пользователя плюс разрешение для ботов. Боты прописываются явно. Это для гугла. Для яндекса будет добавить yandex.com в разрешенные. Ограничения варианта - сайт доступен зарегистрированным пользователям....

Приведенный ниже код позволяет поисковым роботам (в данном случае, googlebot) просматривать страницу и делает так, чтобы я, с моего IP, мог входить на сайт без пароля, а мой клиент и посетители – по паролю. Также данным кодом разрешено проведение XHTML и CSS валидации! (w3.org)

AuthName "SiteName Administration"
AuthUserFile /home/sitename.com/.htpasswd
AuthType basic
Require valid-user
Order deny,allow
Deny from all
Allow from 24\\.205\\.23\\.222
Allow from w3.org htmlhelp.com
Allow from googlebot.com
Satisfy Any

 

Думаю, есть смысл первый вариант использовать и разрешения для ботов взять из второго.

Коды для обоих вариантов взяты из комментариев к посту habrahabr.ru/post/31054

 

IP адреса ботов гугла и яндекса

Для начала скажу, что они могут периодически меняться. И... напрямую прописывать в запрет IP адрес смысла нет.

В справке гугла написано:

Проверить, действительно ли робот, обращающийся к вашему серверу, является роботом Googlebot (или другимагентом пользователя Google), можно с помощью обратного DNS-запроса. Убедившись, что имя относится к домену googlebot.com, используйте прямой DNS-запрос по этому имени робота Googlebot. Это полезно сделать, если у вас есть подозрения, что под видом робота Googlebot к вашему сайту обращаются спамеры или другие злоумышленники.

Пример:

> host 66.249.66.1
1.66.249.66.in-addr.arpa domain name pointer 
crawl-66-249-66-1.googlebot.com.

> host crawl-66-249-66-1.googlebot.com
crawl-66-249-66-1.googlebot.com has address 66.249.66.1

Компания Google не публикует "белые списки" IP-адресов для веб-мастеров. Диапазоны IP-адресов могут измениться, что создаст проблемы для веб-мастеров, установивших к ним жесткую привязку. Лучший способ определить обращение робота Googlebot – по агенту пользователя (Googlebot).

Теперь идем в справку яндекса:

Некоторые роботы могут маскироваться под роботов Яндекса путем указания соответствующего user-agent. Вы можете проверить, что робот является тем, за кого себя выдает используя идентификацию, основанную на обратных DNS запросах (reverse DNS lookup).

Для этого необходимо выполнить следующее:

  • Для интересующего user-agent определите IP адрес по логам вашего сервера. Все роботы Яндекса представляются с помощью заданных User-Agent.

  • По полученному IP адресу определите доменное имя хоста, используя обратный DNS запрос.

  • После определения имени хоста, Вы можете проверить, принадлежит ли он Яндексу. Имена всех роботов Яндекса заканчиваются на 'yandex.ru', 'yandex.net' или 'yandex.com'. Если имя хоста имеет другое окончание, это означает, что робот не принадлежит Яндексу.

  • Напоследок удостоверьтесь в корректности полученного имени. Для этого нужно использовать прямой DNS запрос (forward DNS lookup), чтобы получить IP адрес, соответствующий имени хоста. Он должен совпадать с IP адресом, использованным при обратном DNS запросе. Если IP адреса не совпадают, это означает, что полученное имя хоста поддельное.

Уже ругаетесь, что привел решение с блокировкой по IP адресу, а самих адресов не дал? Зря!

Адреса могут меняться. Поэтому. Идем на хостинг и берем лог файлы. И ищем по юзер-агенту айпишники ботов яндекса и гугла которые заходили на Ваш сайт. Желательно проанализировать логи за пару недель (все боты пройдут почти наверняка). Поиск по логу (текстовому файлу) очень прост. Поиск (контрл + F) и "+http://yandex.com/bots" для яндекса и "

googlebot.com" для гугла.

Собственно, найденные айпишники прописываем и всё в порядке.

Автор статьи: 
Рейтинг: 
Средняя: 5 (1 оценка)

Filtered HTML

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
1 + 2 =
Решите эту простую математическую задачу и введите результат. Например, для 1+3, введите 4.

Поделитесь статьей в социальных сетях.
На главную вернуться.