Как предотвратить индексацию в поисковых системах

Я бы хотел, чтобы мои веб-сайты не индексировались поисковыми системами (сначала Google).

Я слышал, что Wordpress хорош в этом, но я хотел бы быть технологичным агностиком.

Достаточно ли robots.txt? Мы хотели бы оставить анонимный доступ, чтобы клиент мог видеть его на сайте без необходимости входа в систему.

Нужно ли добавлять nofollow на все страницы?

Ответы

Ответ 1

Я обычно против публикации промежуточных серверов в общедоступной сети, но если это лучшее решение для вашего рабочего процесса, вот несколько вещей, которые вы можете рассмотреть:

Минимальный подход

  • Создайте новый домен для промежуточного сервера (например, example-stage.com)
  • Добавить robots.txt = > Disallow: /
  • Проверить домен в Инструментах для веб-мастеров Google и Bing

Минимальный подход - это самые основы, чтобы убедиться, что вы не стреляете в ногу с дублированием контента во всем мире. Регистрируя отдельный домен, это чистое разделение для пользователя того, что является этапом, а что нет. Это также немного чище, когда вам нужно перемещать среду вокруг, но это более оперативно. CNAME будут работать, но не забудьте зарегистрировать каждый CNAME с помощью инструментов Google и Bing для веб-мастеров. Таким образом вы можете использовать инструмент удаления домена, если вам нужно.

Рекомендуемый подход

  • Добавить аутентификацию (HTTP или иначе) перед запросами
  • Ответьте на соответствующий код ответа, если он не разрешен (например, 401 неавторизованный)
  • Все остальное в базовом подходе выше

Добавив файл robots.txt, он не позволяет поисковым системам получать доступ и индексировать контент. Однако это не означает, что они не будут индексировать URL. Если поисковая система знает о данном URL-адресе, он может добавить его в индекс результатов поиска. Иногда вы увидите их в результатах поиска. Заголовок имеет тенденцию быть URL без описания. Чтобы этого не происходило, поисковым системам нужно не показывать контент или URL-адреса. Добавляя аутентификацию infront и не отвечая на код состояния 200 OK, это сильный сигнал для двигателей не добавлять эти URL-адреса в свой индекс. По моему опыту, я никогда не видел 401 кода кода ответа, перечисленных в индексе поисковой системы.

Предпочтительный подход

  • Поместите промежуточные сайты за IP-таблицами (например, доступны только из заданного диапазона IP)
  • Добавить команды мета или x-роботов на каждую страницу со значением NOINDEX, NOFOLLOW
  • Все остальное в Advised Approach

Помещение промежуточных сайтов за IP-фильтром гарантирует, что только ваши клиенты смогут получить доступ к сайту. Это может быть проблемой, если они хотят получить доступ к нему с других компьютеров, а иногда и к головной боли обслуживания, но это лучший подход, если вы не хотите индексировать свою промежуточную среду. В предостережении вам нужно убедиться, что все остальные запросы (например, поисковые системы и не-клиенты) не возвращают ничего. Они должны получить ответ на тайм-аут и никогда не использовать 200 OK. Слушая другую информацию, это может быть ошибочно принято за клоакинг, который вам не нужен.

Кроме того, чтобы быть более безопасным, я бы также добавил мета-роботы или команду x-robots-header для каждой страницы в NOINDEX, NOFOLLOW только в случае, если IP-таблицы потерпят неудачу из-за неправильной настройки или если аутентификация никогда не срабатывает... она редко, но это происходит, когда есть люди, которые касаются конфигураций по другим причинам. Как и файл robots.txt, вы действительно можете стрелять в ногу с помощью этих команд роботов на уровне страницы, если их когда-либо выталкивают на производство. Поэтому просто убедитесь, что ваши среды разработки/развертывания находятся в полностью разделенной конфигурации. В противном случае нажатие NOINDEX, NOFOLLOW или Disallow: / будет катастрофическим для вашего производственного сайта.

Ответ 2

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

Набор заголовков X-Robots-Tag "noindex, nofollow"

Как только это будет сделано, вы сможете проверить его, вернув заголовки apache.

curl -I staging.mywebsite.com HTTP/1.1 302 Found Date: Sat, 26 Nov 2016 22:36:33 GMT Server: Apache/2.4.18 (Ubuntu) Location: /pages/ X-Robots-Tag: noindex, nofollow Content-Type: text/html; charset=UTF-8

Ответ 3

Я добавил этот код на свой сайт (закодирован в php):

if( $_SERVER['HTTP_HOST'] == 'test.ate.io' ) {
    header("X-Robots-Tag: noindex, nofollow", true);    
}

Таким образом, даже если мой конфигурационный файл из этапа случайно попадет на мой производственный сервер, проблем не будет.

Ответ 4

TL;DR; Создайте файл robots.txt в корневом каталоге. Этот файл должен содержать одну строку:

Disallow: /

Этого достаточно, чтобы запретить Google и Bing ботам индексировать ваш сайт и появляться в результатах поиска.