• Как закрыть от индексации robots txt. Чем меньше страниц индексируется тем больше трафика. Мета-тег robots и как он прописывается

    Передо мной возникла задача исключить из индексирования поисковыми системами страницы, содержащие определённую строку запроса (уникальные для пользователя отчёты, каждый из которых имеет свой адрес). Я решил эту задачу для себя, а также решил полностью разобраться с вопросами разрешения и запрещения индексирования сайта. Этому посвящён данный материал. В нём рассказывается не только о продвинутых случаях использования robots.txt, но также и других, менее известных способах контроля индексации сайта.

    В Интернете много примеров, как исключить определённые папки из индексации поисковыми системами. Но может возникнуть ситуация, когда нужно исключить страницы, причём не все, а содержащие только указанные параметры.

    Пример страницы с параметрами: сайт.ru/?act=report&id=7a98c5

    Здесь act - это имя переменной, значение которой report , и id - это тоже переменная со значением 7a98c5 . Т.е. строка запроса (параметры) идут после знака вопроса.

    Закрыть страницы с параметрами от индексирования можно несколькими способами:

    • с помощью файла robots.txt
    • с помощью правил в файле.htaccess
    • с помощью метатега robots

    Контроль индексации в файле robots.txt

    Файл robots.txt

    Файл robots.txt - это простой текстовый файл, который размещается в корневой директории (папке) сайта, и содержащий одну или более записей. Типичный пример содержимого файла:

    User-agent: * Disallow: /cgi-bin/ Disallow: /tmp/ Disallow: /~joe/

    В этом файле из индексации исключены три директории.

    Помните, что строку с "Disallow " нужно писать отдельно для каждого URL префикса, который вы хотите исключить. То есть вы не можете написать "Disallow: /cgi-bin/ /tmp/ " в одну строку. Также помните о специальном значении пустых строк - они разделяют блоки записей.

    Регулярные выражения не поддерживаются ни в строке User-agent , ни в Disallow .

    Файл robots.txt должен размещаться в корневой папке вашего сайта. Его синтаксис следующий:

    User-agent: * Disallow: /папка или страница, запрещённая для индексации Disallow: /другая папка

    В качестве значения User-agent указана * (звёздочка) - это соответствует любому значению, т.е. правила предназначены для всех поисковых машин. Вместо звёздочки можно указать имя определённой поисковой машины, для которой предназначено правило.

    Можно указать более чем одну директиву Disallow .

    В файле robots.txt можно использовать подстановочный символы:

    • * обозначает 0 или более экземпляров любого действительного символа. Т.е. это любая строка, в том числе и пустая.
    • $ обозначает конец URL.

    Другие символы, в том числе &, ?, = и т.д. понимаются буквально.

    Запрет индексации страницы с определёнными параметрами с помощью robots.txt

    Итак, я хочу заблокировать адреса вида (вместо ЗНАЧЕНИЕ может быть любая строка): сайт.ru/?act=report&id=ЗНАЧЕНИЕ

    Для этого подойдёт правило:

    User-agent: * Disallow: /*?*act=report&id=*

    В нём / (слеш) означает корневую папку сайта, затем следует * (звёздочка), она означает «что угодно». Т.е. это может быть любой относительный адрес, например:

    • /page.php
    • /order/new/id

    Затем следует ? (знак вопроса), который трактуется буквально, т.е. как знак вопроса. Следовательно далее идёт строка запроса.

    Вторая * означает, что в строке запроса может быть что-угодно.

    Затем идёт последовательность символов act=report&id=* , в ней act=report&id= трактуется буквально, как есть, а последняя звёздочка вновь означает любую строку.

    Запрет индексации поисковыми системами, но разрешение для сканеров рекламных сетей

    Если вы закрыли сайт от индексирования для поисковых систем, либо закрыли определённые его разделы, то на них не будет показываться реклама AdSense! Размещение рекламы на страницах, закрытых от индексации, может считаться нарушением и в других партнёрских сетях.

    Чтобы это исправить, добавьте в самое начало файла robots.txt следующие строки:

    User-agent: Mediapartners-Google Disallow: User-agent: AdsBot-Google* Disallow: User-Agent: YandexDirect Disallow:

    Этими строками мы разрешаем ботам Mediapartners-Google , AdsBot-Google* и YandexDirect индексировать сайт.

    Т.е. файл robots.txt для моего случая выглядит так:

    User-agent: Mediapartners-Google Disallow: User-agent: AdsBot-Google* Disallow: User-Agent: YandexDirect Disallow: User-agent: * Disallow: /*?*act=report&id=*

    Запрет индексации всех страниц со строкой запроса

    Это можно сделать следующим образом:

    User-agent: * Disallow: /*?*

    Данный пример блокирует все страницы, содержащие в URL ? (знак вопроса).

    Помните: знак вопроса, стоящий сразу после имени домена, например, site.ru/? равнозначен индексной странице, поэтому будьте осторожны с данным правилом.

    Запрет индексации страниц с определённым параметром, передающимся методом GET

    К примеру, нужно заблокировать URL, содержащие в строке запроса параметр order , для этого подойдёт следующее правило:

    User-agent: * Disallow: /*?*order=

    Запрет индексации страниц с любым из нескольких параметров

    Предположим, нам нужно запретить индексировать страницы, содержащие в строке запроса или параметр dir , или параметр order , или параметр p . Для этого перечислите каждый из параметров для блокировки в отдельных правилах примерно следующим образом:

    User-agent: * Disallow: /*?*dir= Disallow: /*?*order= Disallow: /*?*p=

    Как запретить поисковым системам индексировать страницы, в URL которых несколько определённых параметров

    К примеру, нужно исключить из индексации страницы, содержание в строке запроса параметр dir , параметр order и параметр p . К примеру, страница с таким URL должна быть исключена из индексации: mydomain.com/new-printers?dir=asc&order=price&p=3

    Этого можно добиться используя директиву:

    User-agent: * Disallow: /*?dir=*&order=*&p=*

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

    Как закрыть сайт от индексации

    Чтобы запретить всем роботам индексировать весь сайт:

    User-agent: * Disallow: /

    Разрешение всем роботам полный доступ

    Чтобы предоставить всем роботам полный доступ для индексации сайта:

    User-agent: * Disallow:

    Либо просто создайте пустой файл /robots.txt, либо вообще не используйте его - по умолчанию, всё, что не запрещено для индексации, считается открытым. Поэтому пустой файл, либо его отсутствие - означают разрешение на полное индексирование.

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

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

    User-agent: * Disallow: /cgi-bin/ Disallow: /tmp/ Disallow: /junk/

    Блокировка отдельных роботов

    Для закрытия доступа отдельным роботам и поисковым системам, используйте имя робота в строке User-agent . В данном примере закрыт доступ для BadBot :

    User-agent: BadBot Disallow: /

    Помните: многие роботы игнорируют файл robots.txt, поэтому это не является надёжным средством закрыть сайт или его часть от индексирования.

    Разрешить индексировать сайт одной поисковой системой

    Допустим, мы хотим разрешить индексировать сайт только Google, а другим поисковым системам закрыть доступ, тогда сделайте так:

    User-agent: Google Disallow: User-agent: * Disallow: /

    Первые две строки дают разрешение роботу Google на индексацию сайта, а последние две строки запрещают это всем остальным роботам.

    Запрет на индексацию всех файлов, кроме одного

    Директива Allow определяет пути, которые должны быть доступны указанным поисковым роботам. Если путь не указан, она игнорируется.

    Использование:

    Allow: [путь]

    Важно : Allow должна следовать до Disallow .

    Примечание : Allow не является частью стандарта, но многие популярные поисковые системы её поддерживают.

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

    Как проверить работу robots.txt

    В Яндекс.Вебмастер есть инструмент для проверки конкретных адресов на разрешение или запрет их индексации в соответствии с файлом robots.txt вашего файла.

    Для этого перейдите во вкладку Инструменты , выберите Анализ robots.txt . Этот файл должен загрузиться автоматически, если там старая версия, то нажмите кнопку Проверить :

    Затем в поле Разрешены ли URL? введите адреса, которые вы хотите проверить. Можно за один раз вводить много адресов, каждый из них должен размещаться на новой строчке. Когда всё готово, нажмите кнопку Проверить .

    В столбце Результат если URL адрес закрыт для индексации поисковыми роботами, он будет помечен красным светом, если открыт - то зелёным.

    В Search Console имеется аналогичный инструмент. Он находится во вкладке Сканирование . Называется Инструмент проверки файла robots.txt .

    Если вы обновили файл robots.txt, то нажмите на кнопку Отправить , а затем в открывшемся окно снова на кнопку Отправить :

    После этого перезагрузите страницу (клавиша F5):

    Введите адрес для проверки, выберите бота и нажмите кнопку Проверить :

    Запрет индексации страницы с помощью мета тега robots

    Если вы хотите закрыть страницу от индексации, то в теге пропишите:

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

    Например, запрет для индексации всех файлов с расширением.PDF:

    Header set X-Robots-Tag "noindex, nofollow"

    Запрет для индексации всех файлов изображений (.png, .jpeg, .jpg, .gif):

    Header set X-Robots-Tag "noindex"

    Блокировка доступа поисковым системам с помощью mod_rewrite

    На самом деле, всё, что было описано выше, НЕ ГАРАНТИРУЕТ, что поисковые системы и запрещённые роботы не будут заходить и индексировать ваш сайт. Есть роботы, которые «уважают» файл robots.txt, а есть те, которые его просто игнорируют.

    С помощью mod_rewrite можно закрыть доступ для определённых ботов

    RewriteEngine On RewriteCond %{HTTP_USER_AGENT} Google RewriteCond %{HTTP_USER_AGENT} Yandex RewriteRule ^ - [F]

    Приведённые директивы заблокируют доступ роботам Google и Yandex для всего сайта.

    report/

    RewriteEngine On RewriteCond %{HTTP_USER_AGENT} Google RewriteCond %{HTTP_USER_AGENT} Yandex RewriteRule ^report/ - [F]

    Если вам интересна блокировка доступа для поисковых систем к отдельным страницам и разделам сайта с помощью mod_rewrite, то пишите в комментариях и задавайте ваши вопросы - я подготовлю больше примеров.

    13 observations on “Как исключить из индексации страницы с определёнными параметрами в URL и другие техники контроля индексации сайта поисковыми системами
    1. Тарас

      самое близкое по значению, но тут папка

      Если, допустим, нужно закрыть для индексирования только одну папку report/ , то следующие директивы полностью закроют доступ к этой папке (будет выдаваться код ответа 403 Доступ Запрещён) для сканеров Google и Yandex.

    В SEO мелочей не бывает. Иногда на продвижение сайта может оказать влияние всего лишь один небольшой файл — Robots.txt. Если вы хотите, чтобы ваш сайт зашел в индекс, чтобы поисковые роботы обошли нужные вам страницы, нужно прописать для них рекомендации.

    «Разве это возможно?» , — спросите вы. Возможно. Для этого на вашем сайте должен быть файл robots.txt. Как правильно составить файл роботс , настроить и добавить на сайт – разбираемся в этой статье.

    Что такое robots.txt и для чего нужен

    Robots.txt – это обычный текстовый файл , который содержит в себе рекомендации для поисковых роботов: какие страницы нужно сканировать, а какие нет.

    Важно: файл должен быть в кодировке UTF-8, иначе поисковые роботы могут его не воспринять.

    Зайдет ли в индекс сайт, на котором не будет этого файла? Зайдет, но роботы могут «выхватить» те страницы, наличие которых в результатах поиска нежелательно: например, страницы входа, админпанель, личные страницы пользователей, сайты-зеркала и т.п. Все это считается «поисковым мусором»:

    Если в результаты поиска попадёт личная информация, можете пострадать и вы, и сайт. Ещё один момент – без этого файла индексация сайта будет проходить дольше.

    В файле Robots.txt можно задать три типа команд для поисковых пауков:

    • сканирование запрещено;
    • сканирование разрешено;
    • сканирование разрешено частично.

    Все это прописывается с помощью директив.

    Как создать правильный файл Robots.txt для сайта

    Файл Robots.txt можно создать просто в программе «Блокнот», которая по умолчанию есть на любом компьютере. Прописывание файла займет даже у новичка максимум полчаса времени (если знать команды).

    Также можно использовать другие программы – Notepad, например. Есть и онлайн сервисы, которые могут сгенерировать файл автоматически. Например, такие как CY-PR.com или Mediasova .

    Вам просто нужно указать адрес своего сайта, для каких поисковых систем нужно задать правила, главное зеркало (с www или без). Дальше сервис всё сделает сам.

    Лично я предпочитаю старый «дедовский» способ – прописать файл вручную в блокноте. Есть ещё и «ленивый способ» — озадачить этим своего разработчика 🙂 Но даже в таком случае вы должны проверить, правильно ли там всё прописано. Поэтому давайте разберемся, как составить этот самый файл, и где он должен находиться.

    Готовый файл Robots.txt должен находиться в корневой папке сайта. Просто файл, без папки:

    Хотите проверить, есть ли он на вашем сайте? Вбейте в адресную строку адрес: site.ru/robots.txt . Вам откроется вот такая страничка (если файл есть):

    Файл состоит из нескольких блоков, отделённых отступом. В каждом блоке – рекомендации для поисковых роботов разных поисковых систем (плюс блок с общими правилами для всех), и отдельный блок со ссылками на карту сайта – Sitemap.

    Внутри блока с правилами для одного поискового робота отступы делать не нужно.

    Каждый блок начинается директивой User-agent.

    После каждой директивы ставится знак «:» (двоеточие), пробел, после которого указывается значение (например, какую страницу закрыть от индексации).

    Нужно указывать относительные адреса страниц, а не абсолютные. Относительные – это без «www.site.ru». Например, вам нужно запретить к индексации страницу www.site.ru/shop . Значит после двоеточия ставим пробел, слэш и «shop»:

    Disallow: /shop.

    Звездочка (*) обозначает любой набор символов.

    Знак доллара ($) – конец строки.

    Вы можете решить – зачем писать файл с нуля, если его можно открыть на любом сайте и просто скопировать себе?

    Для каждого сайта нужно прописывать уникальные правила. Нужно учесть особенности CMS . Например, та же админпанель находится по адресу /wp-admin на движке WordPress, на другом адрес будет отличаться. То же самое с адресами отдельных страниц, с картой сайта и прочим.

    Настройка файла Robots.txt: индексация, главное зеркало, диррективы

    Как вы уже видели на скриншоте, первой идет директива User-agent. Она указывает, для какого поискового робота будут идти правила ниже.

    User-agent: * — правила для всех поисковых роботов, то есть любой поисковой системы (Google, Yandex, Bing, Рамблер и т.п.).

    User-agent: Googlebot – указывает на правила для поискового паука Google.

    User-agent: Yandex – правила для поискового робота Яндекс.

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

    Disallow: Запрет на индексацию

    Чтобы запретить индексацию сайта в целом или отдельных страниц, используется директива Disallow.

    Например, вы можете полностью закрыть сайт от индексации (если ресурс находится на доработке, и вы не хотите, чтобы он попал в выдачу в таком состоянии). Для этого нужно прописать следующее:

    User-agent: *

    Disallow: /

    Таким образом всем поисковым роботам запрещено индексировать контент на сайте.

    А вот так можно открыть сайт для индексации:

    User-agent: *

    Disallow:

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

    Чтобы закрыть от индексации отдельные страницы, нужно указать их адрес. Я уже писала, как это делается:

    User-agent: *

    Disallow: /wp-admin

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

    Что нужно закрывать от индексации в обязательном порядке:

    • административную панель;
    • личные страницы пользователей;
    • корзины;
    • результаты поиска по сайту;
    • страницы входа, регистрации, авторизации.

    Можно закрыть от индексации и отдельные типы файлов. Допустим, у вас на сайте есть некоторые.pdf-файлы, индексация которых нежелательна. А поисковые роботы очень легко сканируют залитые на сайт файлы. Закрыть их от индексации можно следующим образом:

    User-agent: *

    Disallow: /*. pdf$

    Как отрыть сайт для индексации

    Даже при полностью закрытом от индексации сайте можно открыть роботам путь к определённым файлам или страницам. Допустим, вы переделываете сайт, но каталог с услугами остается нетронутым. Вы можете направить поисковых роботов туда, чтобы они продолжали индексировать раздел. Для этого используется директива Allow:

    User-agent: *

    Allow: /uslugi

    Disallow: /

    Главное зеркало сайта

    До 20 марта 2018 года в файле robots.txt для поискового робота Яндекс нужно было указывать главное зеркало сайта через директиву Host. Сейчас этого делать не нужно – достаточно настроить постраничный 301-редирект .

    Что такое главное зеркало? Это какой адрес вашего сайта является главным – с www или без. Если не настроить редирект, то оба сайта будут проиндексированы, то есть, будут дубли всех страниц.

    Карта сайта: robots.txt sitemap

    После того, как прописаны все директивы для роботов, необходимо указать путь к Sitemap. Карта сайта показывает роботам, что все URL, которые нужно проиндексировать, находятся по определённому адресу. Например:

    Sitemap: site.ru/sitemap.xml

    Когда робот будет обходить сайт, он будет видеть, какие изменения вносились в этот файл. В итоге новые страницы будут индексироваться быстрее.

    Директива Clean-param

    В 2009 году Яндекс ввел новую директиву – Clean-param. С ее помощью можно описать динамические параметры, которые не влияют на содержание страниц. Чаще всего данная директива используется на форумах. Тут возникает много мусора, например id сессии, параметры сортировки. Если прописать данную директиву, поисковый робот Яндекса не будет многократно загружать информацию, которая дублируется.

    Прописать эту директиву можно в любом месте файла robots.txt.

    Параметры, которые роботу не нужно учитывать, перечисляются в первой части значения через знак &:

    Clean-param: sid&sort /forum/viewforum.php

    Эта директива позволяет избежать дублей страниц с динамическими адресами (которые содержат знак вопроса).

    Директива Crawl-delay

    Эта директива придёт на помощь тем, у кого слабый сервер.

    Приход поискового робота – это дополнительная нагрузка на сервер. Если у вас высокая посещаемость сайта, то ресурс может попросту не выдержать и «лечь». В итоге робот получит сообщение об ошибке 5хх. Если такая ситуация будет повторяться постоянно, сайт может быть признан поисковой системой нерабочим.

    Представьте, что вы работаете, и параллельно вам приходится постоянно отвечать на звонки. Ваша продуктивность в таком случае падает.

    Так же и с сервером.

    Вернемся к директиве. Crawl-delay позволяет задать задержку сканирования страниц сайта с целью снизить нагрузку на сервер. Другими словами, вы задаете период, через который будут загружаться страницы сайта. Указывается данный параметр в секундах, целым числом:

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

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

      1. Когда только создали блог и меняют на нем интерфейс, навигацию и прочие параметры, наполняют его различными материалами. Разумеется, веб-ресурс и контент, содержащийся на нем, будет не таким, каким бы вы хотели его видеть в конечном итоге. Естественно, пока сайт не доработан, разумно будет закрыть его от индексации Яндекса и Google, чтобы эти мусорные страницы не попадали в индекс.

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

      2. Иногда разработчикам требуется поставить вторую версию сайта, аналог основной на которой они тестируют доработки, эту версию с дубликатом сайта лучше тоже закрывать от индексации, чтобы она не смогла навредить основному проекту и не ввести поисковые системы в заблуждение.

    Какие есть способы запрета индексации сайта?

    1. Панель инструментов в .
    2. Изменения в файле robots.txt.
    3. Посредством name=“robots”
    4. Написание кода в настройках сервера.

    1. Закрытие индексации через WordPress

    Если сайт создан на базе WordPress, это ваш вариант. Скрыть проект от ботов таким образом проще и быстрее всего:

    1. Перейдите в «Панель управления».
    2. Затем в «Настройки».
    3. А после – в «Чтение».
    4. Отыщите меню «Видимость для поисковиков».
    5. Возле строки «Рекомендовать поисковым роботам не индексировать сайт» поставьте галочку.
    6. Сохраните изменения.


    Благодаря встроенной функции, движок автоматически изменит robots.txt, откорректировав правила и отключив тем самым индексацию ресурса.

    На заметку. Следует отметить, что окончательное решение, включать сайт в индекс или нет, остается за поисковиками, и ниже можно увидеть это предупреждение. Как показывает практика, с Яндексом проблем не возникает, а вот Google может продолжить индексировать документы.

    2. Посредством файла robots.txt

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

    Затем скиньте его в корневую папку своего портала, чтобы этот файл мог открываться по такому пути site.ru/robots.txt

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

    Закрыть сайта полностью для всех поисковых систем

    Укажите в robots.txt команду:

    User-agent: * Disallow: /

    Это позволит запретить ботам всех поисковиков обрабатывать и вносить в базу данных всю информацию, находящуюся на вашем веб-ресурсе. Проверить документ robots.txt, как мы уже говорили, можно, введя в адресной строке браузера: Название__вашего_домена.ru/robots.txt . Если вы все сделали правильно, то увидите все, что указано в файле. Но если, перейдя по указанному адресу, вам выдаст ошибку 404, то, скорее всего, вы скинули файл не туда.

    Отдельную папку

    User-agent: * Disallow: /folder/

    Так вы скроете все файлы, находящиеся в указанной папке.

    Только в Яндексе

    User-agent: Yandex Disallow: /

    Чтобы перепроверить, получилось ли у вас удалить свой блог из Яндекса, добавьте его в Яндекс.Вебмастер, после чего зайдите в соответствующий раздел по ссылке https://webmaster.yandex.ru/tools/robotstxt/ . В поле для проверки URL вставьте несколько ссылок на документы ресурса, и нажмите «Проверить». Если они скрыты от ботов, напротив них в результатах будет написано «Запрещено правилом /*?*».

    Только для Google

    User-agent: Googlebot Disallow: /

    Проверить, получилось ли сделать запрет, или нет, можно аналогичным способом, что и для Яндекса, только вам нужно будет посетить панель вебмастера Google Search Console. Если документ закрыт от поисковика, то напротив ссылки будет написано «Заблокировано по строке», и вы увидите ту самую строку, которая дала команду ботам не индексировать его.

    Но с большой вероятностью вы можете увидеть «Разрешено». Здесь два варианта: либо вы что-то сделали неправильно, либо Google продолжает индексировать запрещенные в документе robots страницы. Я уже упоминал об этом выше, что для поисковых машин данный документ несет лишь рекомендационный характер, и окончательное решение по индексированию остается за ними.

    Для других поисковиков

    Все поисковики имеют собственных ботов с уникальными именами, чтобы вебмастера могли прописывать их в robots.txt и задавать для них команды. Представляем вашему вниманию самые распространенные (кроме Яндекса и Google):

    • Поисковик Yahoo. Имя робота – Slurp.
    • Спутник. Имя робота – SputnikBot.
    • Bing. Имя робота – MSNBot.

    Список имен всех ботов вы с легкостью найдете в интернете.

    Скрыть изображения

    Чтобы поисковики не могли индексировать картинки, пропишите такие команды (будут зависеть от формата изображения):

    User-Agent: * Disallow: *.png Disallow: *.jpg Disallow: *.gif

    Закрыть поддомен

    Любой поддомен содержит собственный robots.txt. Как правило, он находится в корневой для поддомена папке. Откройте документ, и непосредственно там укажите:

    User-agent: * Disallow: /

    Если такого текстового документа в папке поддомена нет, создайте его самостоятельно.

    3. С применением тега name=”robots”

    Еще один способ, который поможет скрыть от роботов поисковых систем какой-либо документ или полностью весь сайт – использование мета-тега robots. Данный вариант является одним из самых приоритетных к исполнению для поисковиков. Для этого в любом месте, но обязательно внутри тегов и , нужно прописать код:

    4. В настройках сервера

    И последний способ, о котором хочу вам рассказать – обращение к серверу. К этому варианту вебмастера прибегают в тому случае, когда роботы вообще никак не реагируют на действия, описанные выше. Такое иногда случается, и тогда приходится решать проблему в настройках сервера посредством файла . Откройте его и пропишите в нем это:

    SetEnvIfNoCase User-Agent "^Googlebot" search_bot SetEnvIfNoCase User-Agent "^Yandex" search_bot SetEnvIfNoCase User-Agent "^Yahoo" search_bot SetEnvIfNoCase User-Agent "^Aport" search_bot SetEnvIfNoCase User-Agent "^msnbot" search_bot SetEnvIfNoCase User-Agent "^spider" search_bot SetEnvIfNoCase User-Agent "^Robot" search_bot SetEnvIfNoCase User-Agent "^php" search_bot SetEnvIfNoCase User-Agent "^Mail" search_bot SetEnvIfNoCase User-Agent "^bot" search_bot SetEnvIfNoCase User-Agent "^igdeSpyder" search_bot SetEnvIfNoCase User-Agent "^Snapbot" search_bot SetEnvIfNoCase User-Agent "^WordPress" search_bot SetEnvIfNoCase User-Agent "^BlogPulseLive" search_bot SetEnvIfNoCase User-Agent "^Parser" search_bot

    5. С помощью HTTP заголовка X-Robots-Tag

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

    Иногда нужно, чтобы страницы сайта или размещенные на них ссылки не появлялись в результатах поиска. Скрыть содержимое сайта от индексирования можно с помощью файла robots.txt , HTML-разметки или авторизации на сайте.

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

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

      Используйте авторизацию на сайте. Рекомендуем этот способ, чтобы скрыть от индексирования главную страницу сайта. Если главная страница запрещена в файле robots.txt или с помощью метатега noindex , но на нее ведут ссылки, страница может попасть в результаты поиска.

    Запрет индексирования контента страницы

    Скрыть от индексирования часть текста страницы

    В HTML-коде страницы добавьте элемент noindex . Например:

    Элемент не чувствителен к вложенности - может находиться в любом месте HTML-кода страницы. При необходимости сделать код сайта валидным возможно использование тега в следующем формате:

    текст, индексирование которого нужно запретить Скрыть от индексирования ссылку на странице

    В HTML-коде страницы в элемент a добавьте атрибут . Например:

    Атрибут работает аналогично директиве nofollow в метатеге robots , но распространяется только на ссылку, для которой указан.

    Файл robots.txt — текстовый файл в формате.txt, ограничивающий поисковым роботам доступ к содержимому на http-сервере. Как определение, Robots.txt — это стандарт исключений для роботов , который был принят консорциумом W3C 30 января 1994 года, и который добровольно использует большинство поисковых систем. Файл robots.txt состоит из набора инструкций для поисковых роботов, которые запрещают индексацию определенных файлов, страниц или каталогов на сайте. Рассмотрим описание robots.txt для случая, когда сайт не ограничивает доступ роботам к сайту.

    Простой пример robots.txt:

    User-agent: * Allow: /

    Здесь роботс полностью разрешает индексацию всего сайта.

    Файл robots.txt необходимо загрузить в корневой каталог вашего сайта , чтобы он был доступен по адресу:

    Ваш_сайт.ru/robots.txt

    Для размещения файла robots.txt в корне сайта обычно необходим доступ через FTP . Однако, некоторые системы управления (CMS) дают возможность создать robots.txt непосредственно из панели управления сайтом или через встроенный FTP-менеджер.

    Если файл доступен, то вы увидите содержимое robots.txt в браузере.

    Для чего нужен robots.txt

    Roots.txt для сайта является важным аспектом . Зачем нужен robots.txt ? Например, в SEO robots.txt нужен для того, чтобы исключать из индексации страницы, не содержащие полезного контента и многое другое . Как, что, зачем и почему исключается уже было описано в статье про , здесь не будем на этом останавливаться. Нужен ли файл robots.txt всем сайтам? И да и нет. Если использование robots.txt подразумевает исключение страниц из поиска, то для небольших сайтов с простой структурой и статичными страницами подобные исключения могут быть лишними. Однако, и для небольшого сайта могут быть полезны некоторые директивы robots.txt , например директива Host или Sitemap, но об этом ниже.

    Как создать robots.txt

    Поскольку robots.txt — это текстовый файл, и чтобы создать файл robots.txt , можно воспользоваться любым текстовым редактором, например Блокнотом . Как только вы открыли новый текстовый документ, вы уже начали создание robots.txt, осталось только составить его содержимое, в зависимости от ваших требований, и сохранить в виде текстового файла с названием robots в формате txt . Все просто, и создание файла robots.txt не должно вызвать проблем даже у новичков. О том, как составить robots.txt и что писать в роботсе на примерах покажу ниже.

    Cоздать robots.txt онлайн

    Вариант для ленивых — создать роботс онлайн и скачать файл robots.txt уже в готовом виде. Создание robots txt онлайн предлагает множество сервисов, выбор за вами. Главное — четко понимать, что будет запрещено и что разрешено, иначе создание файла robots.txt online может обернуться трагедией , которую потом может быть сложно исправить. Особенно, если в поиск попадет то, что должно было быть закрытым. Будьте внимательны — проверьте свой файл роботс, прежде чем выгружать его на сайт. Все же пользовательский файл robots.txt точнее отражает структуру ограничений, чем тот, что был сгенерирован автоматически и скачан с другого сайта. Читайте дальше, чтобы знать, на что обратить особое внимание при редактировании robots.txt.

    Редактирование robots.txt

    После того, как вам удалось создать файл robots.txt онлайн или своими руками, вы можете редактировать robots.txt . Изменить его содержимое можно как угодно, главное — соблюдать некоторые правила и синтаксис robots.txt. В процессе работы над сайтом, файл роботс может меняться, и если вы производите редактирование robots.txt, то не забывайте выгружать на сайте обновленную, актуальную версию файла со всем изменениями. Далее рассмотрим правила настройки файла, чтобы знать, как изменить файл robots.txt и «не нарубить дров».

    Правильная настройка robots.txt

    Правильная настройка robots.txt позволяет избежать попадания частной информации в результаты поиска крупных поисковых систем. Однако, не стоит забывать, что команды robots.txt не более чем руководство к действию, а не защита . Роботы надежных поисковых систем, вроде Яндекс или Google, следуют инструкциям robots.txt, однако прочие роботы могут легко игнорировать их. Правильное понимание и применение robots.txt — залог получения результата.

    Чтобы понять, как сделать правильный robots txt , для начала необходимо разобраться с общими правилами, синтаксисом и директивами файла robots.txt.

    Правильный robots.txt начинается с директивы User-agent , которая указывает, к какому роботу обращены конкретные директивы.

    Примеры User-agent в robots.txt:

    # Указывает директивы для всех роботов одновременно User-agent: * # Указывает директивы для всех роботов Яндекса User-agent: Yandex # Указывает директивы для только основного индексирующего робота Яндекса User-agent: YandexBot # Указывает директивы для всех роботов Google User-agent: Googlebot

    Учитывайте, что подобная настройка файла robots.txt указывает роботу использовать только директивы, соответствующие user-agent с его именем.

    Пример robots.txt с несколькими вхождениями User-agent:

    # Будет использована всеми роботами Яндекса User-agent: Yandex Disallow: /*utm_ # Будет использована всеми роботами Google User-agent: Googlebot Disallow: /*utm_ # Будет использована всеми роботами кроме роботов Яндекса и Google User-agent: * Allow: /*utm_

    Директива User-agent создает лишь указание конкретному роботу, а сразу после директивы User-agent должна идти команда или команды с непосредственным указанием условия для выбранного робота. В примере выше используется запрещающая директива «Disallow», которая имеет значение «/*utm_». Таким образом, закрываем все . Правильная настройка robots.txt запрещает наличие пустых переводов строки между директивами «User-agent», «Disallow» и директивами следующими за «Disallow» в рамках текущего «User-agent».

    Пример неправильного перевода строки в robots.txt:

    Пример правильного перевода строки в robots.txt:

    User-agent: Yandex Disallow: /*utm_ Allow: /*id= User-agent: * Disallow: /*utm_ Allow: /*id=

    Как видно из примера, указания в robots.txt поступают блоками , каждый из которых содержит указания либо для конкретного робота, либо для всех роботов «*».

    Кроме того, важно соблюдать правильный порядок и сортировку команд в robots.txt при совместном использовании директив, например «Disallow» и «Allow». Директива «Allow» — разрешающая директива, является противоположностью команды robots.txt «Disallow» — запрещающей директивы.

    Пример совместного использования директив в robots.txt:

    User-agent: * Allow: /blog/page Disallow: /blog

    Данный пример запрещает всем роботам индексацию всех страниц, начинающихся с «/blog», но разрешает индексации страниц, начинающиеся с «/blog/page».

    Прошлый пример robots.txt в правильной сортировке:

    User-agent: * Disallow: /blog Allow: /blog/page

    Сначала запрещаем весь раздел, потом разрешаем некоторые его части.

    Еще один правильный пример robots.txt с совместными директивами:

    User-agent: * Allow: / Disallow: /blog Allow: /blog/page

    Обратите внимание на правильную последовательность директив в данном robots.txt.

    Директивы «Allow» и «Disallow» можно указывать и без параметров, в этом случае значение будет трактоваться обратно параметру «/».

    Пример директивы «Disallow/Allow» без параметров:

    User-agent: * Disallow: # равнозначно Allow: / Disallow: /blog Allow: /blog/page

    Как составить правильный robots.txt и как пользоваться трактовкой директив — ваш выбор. Оба варианта будут правильными. Главное — не запутайтесь.

    Для правильного составления robots.txt необходимо точно указывать в параметрах директив приоритеты и то, что будет запрещено для скачивания роботам. Более полно использование директив «Disallow» и «Allow» мы рассмотрим чуть ниже, а сейчас рассмотрим синтаксис robots.txt. Знание синтаксиса robots.txt приблизит вас к тому, чтобы создать идеальный robots txt своими руками .

    Синтаксис robots.txt

    Роботы поисковых систем добровольно следуют командам robots.txt — стандарту исключений для роботов, однако не все поисковые системы трактуют синтаксис robots.txt одинаково. Файл robots.txt имеет строго определённый синтаксис, но в то же время написать robots txt не сложно, так как его структура очень проста и легко понятна.

    Вот конкретные список простых правил, следуя которым, вы исключите частые ошибки robots.txt :

    1. Каждая директива начинается с новой строки;
    2. Не указывайте больше одной директивы в одной строке;
    3. Не ставьте пробел в начало строки;
    4. Параметр директивы должен быть в одну строку;
    5. Не нужно обрамлять параметры директив в кавычки;
    6. Параметры директив не требуют закрывающих точки с запятой;
    7. Команда в robots.txt указывается в формате — [Имя_директивы]:[необязательный пробел][значение][необязательный пробел];
    8. Допускаются комментарии в robots.txt после знака решетки #;
    9. Пустой перевод строки может трактоваться как окончание директивы User-agent;
    10. Директива «Disallow: » (с пустым значением) равнозначна «Allow: /» — разрешить все;
    11. В директивах «Allow», «Disallow» указывается не более одного параметра;
    12. Название файла robots.txt не допускает наличие заглавных букв, ошибочное написание названия файла — Robots.txt или ROBOTS.TXT;
    13. Написание названия директив и параметров заглавными буквами считается плохим тоном и если по стандарту, robots.txt и нечувствителен к регистру, часто к нему чувствительны имена файлов и директорий;
    14. Если параметр директивы является директорией, то перед название директории всегда ставится слеш «/», например: Disallow: /category
    15. Слишком большие robots.txt (более 32 Кб) считаются полностью разрешающими, равнозначными «Disallow: »;
    16. Недоступный по каким-либо причинам robots.txt может трактоваться как полностью разрешающий;
    17. Если robots.txt пустой, то он будет трактоваться как полностью разрешающий;
    18. В результате перечисления нескольких директив «User-agent» без пустого перевода строки, все последующие директивы «User-agent», кроме первой, могут быть проигнорированы;
    19. Использование любых символов национальных алфавитов в robots.txt не допускается.

    Поскольку разные поисковые системы могут трактовать синтаксис robots.txt по-разному, некоторые пункты можно опустить. Так например, если прописать несколько директив «User-agent» без пустого перевода строки, все директивы «User-agent» будут восприняты корректно Яндексом, так как Яндекс выделяет записи по наличию в строке «User-agent».

    В роботсе должно быть указано строго только то, что нужно, и ничего лишнего. Не думайте, как прописать в robots txt все , что только можно и чем его заполнить. Идеальный robots txt — это тот, в котором меньше строк, но больше смысла. «Краткость — сестра таланта». Это выражение здесь как нельзя кстати.

    Как проверить robots.txt

    Для того, чтобы проверить robots.txt на корректность синтаксиса и структуры файла, можно воспользоваться одной из онлайн-служб. К примеру, Яндекс и Google предлагают собственные сервисы для вебмастеров, которые включают анализ robots.txt:

    Проверка файла robots.txt в Яндекс.Вебмастер: http://webmaster.yandex.ru/robots.xml

    Для того, чтобы проверить robots.txt онлайн необходимо загрузить robots.txt на сайт в корневую директорию . Иначе, сервис может сообщить, что не удалось загрузить robots.txt . Рекомендуется предварительно проверить robots.txt на доступность по адресу где лежит файл, например: ваш_сайт.ru/robots.txt.

    Кроме сервисов проверки от Яндекс и Google, существует множество других онлайн валидаторов robots.txt.

    Robots.txt vs Яндекс и Google

    Есть субъективное мнение, что указание отдельного блока директив «User-agent: Yandex» в robots.txt Яндекс воспринимает более позитивно, чем общий блок директив с «User-agent: *». Аналогичная ситуация robots.txt и Google. Указание отдельных директив для Яндекс и Google позволяет управлять индексацией сайта через robots.txt. Возможно, им льстит персонально обращение, тем более, что для большинства сайтов содержимое блоков robots.txt Яндекса, Гугла и для других поисковиков будет одинаково. За редким исключением, все блоки «User-agent» будут иметь стандартный для robots.txt набор директив. Так же, используя разные «User-agent» можно установить запрет индексации в robots.txt для Яндекса , но, например не для Google.

    Отдельно стоит отметить, что Яндекс учитывает такую важную директиву, как «Host», и правильный robots.txt для яндекса должен включать данную директиву для указания главного зеркала сайта. Подробнее директиву «Host» рассмотрим ниже.

    Запретить индексацию: robots.txt Disallow

    Disallow — запрещающая директива , которая чаще всего используется в файле robots.txt. Disallow запрещает индексацию сайта или его части, в зависимости от пути, указанного в параметре директивы Disallow.

    Пример как в robots.txt запретить индексацию сайта:

    User-agent: * Disallow: /

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

    В параметре директивы Disallow допускается использование специальных символов * и $:

    * — любое количество любых символов, например, параметру /page* удовлетворяет /page, /page1, /page-be-cool, /page/kak-skazat и т.д. Однако нет необходимости указывать * в конце каждого параметра, так как например, следующие директивы интерпретируются одинаково:

    User-agent: Yandex Disallow: /page User-agent: Yandex Disallow: /page*

    $ — указывает на точное соответствие исключения значению параметра:

    User-agent: Googlebot Disallow: /page$

    В данном случае, директива Disallow будет запрещать /page, но не будет запрещать индексацию страницы /page1, /page-be-cool или /page/kak-skazat.

    Если закрыть индексацию сайта robots.txt , в поисковые системы могут отреагировать на так ход ошибкой «Заблокировано в файле robots.txt» или «url restricted by robots.txt» (url запрещенный файлом robots.txt). Если вам нужно запретить индексацию страницы , можно воспользоваться не только robots txt, но и аналогичными html-тегами:

    • - не индексировать содержимое страницы;
    • - не переходить по ссылкам на странице;
    • - запрещено индексировать содержимое и переходить по ссылкам на странице;
    • — аналогично content=»none».

    Разрешить индексацию: robots.txt Allow

    Allow — разрешающая директива и противоположность директиве Disallow. Эта директива имеет синтаксис, сходный с Disallow.

    Пример, как в robots.txt запретить индексацию сайта кроме некоторых страниц:

    User-agent: * Disallow: / Allow: /page

    Запрещается индексировать весь сайт , кроме страниц, начинающихся с /page.

    Disallow и Allow с пустым значением параметра

    Пустая директива Disallow:

    User-agent: * Disallow:

    Не запрещать ничего или разрешить индексацию всего сайта и равнозначна:

    User-agent: * Allow: /

    Пустая директива Allow:

    User-agent: * Allow:

    Разрешить ничего или полный запрет индексации сайта, равнозначно:

    User-agent: * Disallow: /

    Главное зеркало сайта: robots.txt Host

    Директива Host служит для указания роботу Яндекса главного зеркала Вашего сайта . Из всех популярных поисковых систем, директива Host распознаётся только роботами Яндекса . Директива Host полезна в том случае, если ваш сайт доступен по нескольким , например:

    Mysite.ru mysite.com

    Или для определения приоритета между:

    Mysite.ru www.mysite.ru

    Роботу Яндекса можно указать, какое зеркало является главным . Директива Host указывается в блоке директивы «User-agent: Yandex» и в качестве параметра, указывается предпочтительный адрес сайта без «http://».

    Пример robots.txt с указанием главного зеркала:

    User-agent: Yandex Disallow: /page Host: mysite.ru

    В качестве главного зеркала указывается доменное имя mysite.ru без www. Таки образом, в результатах поиска буде указан именно такой вид адреса.

    User-agent: Yandex Disallow: /page Host: www.mysite.ru

    В качестве основного зеркала указывается доменное имя www.mysite.ru.

    Директива Host в файле robots.txt может быть использована только один раз, если же директива Хост будет указана более одного раза, учитываться будет только первая, прочие директивы Host будут игнорироваться.

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

    Карта сайта: robots.txt sitemap

    При помощи директивы Sitemap, в robots.txt можно указать расположение на сайте .

    Пример robots.txt с указанием адреса карты сайта:

    User-agent: * Disallow: /page Sitemap: http://www.mysite.ru/sitemap.xml

    Указание адреса карты сайта через директиву Sitemap в robots.txt позволяет поисковому роботу узнать о наличии карты сайта и начать ее индексацию.

    Директива Clean-param

    Директива Clean-param позволяет исключить из индексации страницы с динамическими параметрами. Подобные страницы могут отдавать одинаковое содержимое, имея различные URL страницы. Проще говоря, будто страница доступна по разным адресам. Наша задача убрать все лишние динамические адреса, которых может быть миллион. Для этого исключаем все динамические параметры, используя в robots.txt директиву Clean-param .

    Синтаксис директивы Clean-param:

    Clean-param: parm1[&parm2&parm3&parm4&..&parmn] [Путь]

    Рассмотрим на примере страницы со следующим URL:

    Www.mysite.ru/page.html?&parm1=1&parm2=2&parm3=3

    Пример robots.txt Clean-param:

    Clean-param: parm1&parm2&parm3 /page.html # только для page.html

    Clean-param: parm1&parm2&parm3 / # для всех

    Директива Crawl-delay

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

    Пример robots.txt Crawl-delay:

    User-agent: Yandex Disallow: /page Crawl-delay: 3

    В данном случае мы «просим» роботов яндекса скачивать страницы нашего сайта не чаще, чем один раз в три секунды. Некоторые поисковые системы поддерживают формат дробных чисел в качестве параметра директивы Crawl-delay robots.txt .