Спецификации тега Robots (meta
), атрибута data-nosnippet
и HTTP-заголовка X-Robots-Tag
В этом документе рассказывается о том, как управлять показом контента в результатах поиска Google, задавая настройки на уровне страницы и текста. Настройки на уровне страницы задаются с помощью HTTP-заголовка или метатега HTML meta
. Для настроек на уровне текста в HTML-элементы в коде страницы добавляется атрибут data-nosnippet
.
Имейте в виду, что эти настройки учитываются только в том случае, если у поисковых роботов есть доступ к страницам, на которых они заданы.
Правило <meta name="robots" content="noindex">
применяется только для поисковых роботов. Если вы хотите заблокировать другого робота, например AdsBot-Google
, вам могут потребоваться специальные правила (такие как <meta name="AdsBot-Google" content="noindex">
).
Использование метатега robots
Тег robots (meta
) позволяет задавать на уровне страницы детальные настройки, которые определяют, как эта страница будет индексироваться и показываться в результатах поиска Google. Добавьте тег robots (meta
) в раздел <head>
на нужной странице:
<!DOCTYPE html> <html><head> <meta name="robots" content="noindex"> (…) </head> <body>(…)</body> </html>
В этом примере тег meta
с атрибутом robots запрещает поисковым системам показывать страницу в результатах поиска. Заданное для атрибута name
значение robots
указывает, что правило распространяется на всех поисковых роботов. Атрибуты name
и content
можно указывать без учета регистра. Если вы хотите закрыть доступ только одному из них, вместо robots
укажите в значении атрибута name
токен агента пользователя нужного робота. Google поддерживает два токена агента пользователя в теге robots (meta
), а остальные значения игнорируются:
googlebot
: для всех текстовых результатов.googlebot-news
: для новостных результатов.
Например, чтобы дать роботам Google явную инструкцию не показывать определенную стр��ницу в результатах поиска, вы можете указать googlebot
в качестве названия тега meta
:
<meta name="googlebot" content="noindex">
Если вам нужно, чтобы контент со страницы был представлен в результатах поиска Google, но не в Google Новостях, используйте тег googlebot-news
(meta
):
<meta name="googlebot-news" content="noindex">
Если нужно задать неодинаковые настройки для разных поисковых роботов, используйте несколько тегов robots (meta
):
<meta name="googlebot" content="noindex"> <meta name="googlebot-news" content="nosnippet">
Чтобы запретить индексирование файлов формата, отличного от HTML, например документов PDF, видео или изображений, используйте заголовок ответа X-Robots-Tag
.
Как использовать HTTP-заголовок X-Robots-Tag
Заголовок X-Robots-Tag
можно указывать в HTTP-ответе, который отправляется с определенного URL. В заголовках X-Robots-Tag
поддерживаются те же правила, что и в метатегах robots. Вот пример HTTP-ответа с заголовком X-Robots-Tag
, запрещающим поисковым роботам индексировать страницу:
HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: noindex (…)
Вы можете включить в один HTTP-ответ несколько заголовков X-Robots-Tag
или перечислить правила через запятую. Вот пример HTTP-ответа, в котором noarchive
X-Robots-Tag
объединен с unavailable_after
X-Robots-Tag
:
HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: noarchive X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST (…)
Перед правилами X-Robots-Tag
может указывать название агента пользователя. Например, чтобы ваша страница появлялась в результатах поиска лишь некоторых поисковых систем, используйте следующий набор HTTP-заголовков X-Robots-Tag
:
HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: googlebot: nofollow X-Robots-Tag: otherbot: noindex, nofollow (…)
Правила, для которых агент пользователя не указан, будут выполняться всеми поисковыми роботами. HTTP-заголовок, название агента пользователя и другие значения указываются без учета регистра.
Поддерживаемые правила индексирования и показа контента
Указанные ниже правила, которые также доступны в машиночитаемом формате, позволяют управлять индексированием страницы и показом ее фрагмента в результатах поиска. Эти правила указываются в метатеге robots и X-Robots-Tag
. Каждое значение соответствует отдельному правилу. Правила можно объединять в списках, разделенных запятыми, или в отдельных тегах meta
. Регистр символов не учитывается.
Правила | |
---|---|
|
Нет ограничений на индексирование и показ контента. Это правило используется по умолчанию и не влияет на работу поисковых роботов, даже если оно указано в коде. |
|
Не показывать страницу, медиаконтент или ресурс в результатах поиска. Если не добавить это правило, страница, медиаконтент или ресурс будет проиндексирован и сможет показываться в результатах поиска. Если вы хотите удалить какую-либо информацию из Google, следуйте этому пошаговому руководству. |
|
Не выполнять переход по ссылкам на странице. Если не добавить это правило, роботы Google могут использовать ссылки на странице для поиска целевых страниц. Подробнее о правиле nofollow …
|
|
Является эквивалентом noindex, nofollow .
|
|
Не показывать ссылку на кеш в результатах поиска. Если не добавить это правило, Google сможет создать кешированную страницу, доступную пользователям в результатах поиска. |
|
Не показывать для этой страницы окно поиска по сайту в результатах поиска. Если не добавить это правило, в результатах поиска Google могут появляться окно поиска по вашему сайту и прямые ссылки на разделы этого сайта. |
|
Не показывать в результатах поиска текстовый фрагмент или видео. При этом мы можем по-прежнему показывать статические уменьшенные изображения, если они есть и могут способствовать удобству для пользователей. Это правило распространяется на все типы результатов поиска Google (веб-поиск, Картинки, рекомендации, обзор от ИИ) и запрещает использовать контент как источник данных для результатов с обзорами от ИИ. Если не добавить это правило, роботы Google могут создать фрагмент текста и видео на основе информации со страницы. Чтобы запретить показ в результатах поиска Google определенных фрагментов вашего контента, используйте HTML-атрибут |
|
В отличие от директивы
|
|
Ограничение на количество символов в текстов��м фрагменте (не более [число]), который показывается в результатах поиска. Обратите внимание, что один и тот же URL может появляться на странице результатов поиска несколько раз. Это правило не распространяется на предварительный просмотр изображений и видео, но действует в отношении всех видов результатов поиска (веб-поиск Google, Google Картинки, рекомендации, данные от Ассистента и обзор от ИИ) и запрещает использовать контент как источник данных для результатов с обзорами от ИИ. Тем не менее ограничение не применяется, если издатель предоставил отдельное разрешение на использование контента, например добавил структурированные данные или заключил лицензионное соглашение с компанией Google. Тогда эта настройка не отменяет подобные дополнительные разрешения. Если в этом правиле использовать некорректное числовое значение, оно будет игнорироваться. Если вы не добавите правило, Google будет выбирать длину фрагмента самостоятельно. Специальные значения:
Примеры Как запретить показ фрагмента в результатах поиска: <meta name="robots" content="max-snippet:0"> Как разрешить показ во фрагменте 20 символов или менее: <meta name="robots" content="max-snippet:20"> Как указать, что ограничений на количество символов при показе во фрагме��те нет: <meta name="robots" content="max-snippet:-1"> |
|
Это правило определяет максимальный размер изображений, которые могут показываться в результатах поиска для этой страницы.
Если не добавить правило Допустимые значения для элемента [setting]:
Это распространяется на все виды результатов поиска (веб-поиск Google, Google Картинки, рекомендации и данные, предоставляемые Ассистентом). Тем не менее ограничение не применяется в тех случаях, когда издатель предоставил отдельное разрешение на использование контента, например добавил структурированные данные или заключил лицензионное соглашение с компанией Google. В частности, структурированные данные могут определять каноническую и AMP-версию статьи.
Если вы не хотите, чтобы ваши канонические страницы и их AMP-версии показывались в Google Поиске и рекомендациях с более крупными изображениями, укажите в правиле Пример: <meta name="robots" content="max-image-preview:standard"> |
|
Это правило задает для фрагмента видео со страницы ограничение по длительности в секундах при показе в результатах поиска (не более [число]).
Если не добавить правило Специальные значения:
Директива распространяется на все виды результатов поиска (веб-поиск Google, Google Картинки, рекомендации, поиск по видео и данные, предоставляемые Ассистентом). Если в этом правиле использовать некорректное числовое значение, оно будет игнорироваться. Пример: <meta name="robots" content="max-video-preview:-1"> |
|
Эта директива запрещает предлагать в результатах поиска перевод страницы. Если не добавить это правило, Google может показывать перевод ссылки-заголовка и фрагмента страницы в результатах с контентом, язык которого отличается от языка поискового запроса. Когда пользователь нажимает на переведенную ссылку-заголовок и переходит на страницу, все дальнейшие действия на ней совершаются через Google Переводчик, который автоматически выполняет перевод каждой страницы при переходе на нее. |
|
Это правило запрещает индексировать изображения, размещенные на странице. Если не указать это значение, изображения на странице будут проиндексированы и смогут показываться в результатах поиска. |
|
Это правило запрещает показывать страницу в результатах поиска после даты и времени, указанных в одном из основных форматов, таких как RFC 822, RFC 850, ISO 8601 и др. Это правило игнорируется, если не указано допустимое значение даты и времени. По умолчанию у контента нет срока действия. Если не добавить это правило, страница может показываться в результатах поиска неограниченное время. После указанной даты и времени част��т�� ска��и��о��ан��я URL роботом Googlebot значительно уменьшится. Пример: <meta name="robots" content="unavailable_after: 2020-09-21"> |
Как комбинировать правила индексирования и показа контента
Вы можете создать инструкцию из нескольких правил robots, перечислив их через запятую или объединив в отдельных тегах meta
. Ниже приведен пример метатега robots, который запрещает поисковым роботам индексировать страницу и сканировать ссылки на ней.
Список
<meta name="robots" content="noindex, nofollow">
Несколько тегов meta
<meta name="robots" content="noindex"> <meta name="robots" content="nofollow">
В следующем примере фрагмент текста ограничивается 20 символами, но разрешен показ крупных изображений:
<meta name="robots" content="max-snippet:20, max-image-preview:large">
Если перечислены различные правила для нескольких поисковых роботов, поисковая система будет суммировать запреты. Пример:
<meta name="robots" content="nofollow"> <meta name="googlebot" content="noindex">
Обнаружив теги meta
, робот Googlebot будет действовать так же, как при наличии на странице правила noindex, nofollow
.
Как использовать HTML-атрибут data-nosnippet
Фрагменты текста на HTML-странице можно специально пометить, чтобы они не показывались в результатах поиска. Для этого служит атрибут data-nosnippet
HTML-элементов span
, div
и section
. Атрибут data-nosnippet
является логическим
и может указываться без значения. Код должен отвечать стандартам HTML и содержать все необходимые закрывающие теги.
Примеры:
<p>This text can be shown in a snippet <span data-nosnippet>and this part would not be shown</span>.</p> <div data-nosnippet>not in snippet</div> <div data-nosnippet="true">also not in snippet</div> <div data-nosnippet="false">also not in snippet</div> <!-- all values are ignored --> <div data-nosnippet>some text</html> <!-- unclosed "div" will include all content afterwards --> <mytag data-nosnippet>some text</mytag> <!-- NOT VALID: not a span, div, or section --> <p>This text can be shown in a snippet.</p> <div data-nosnippet> <p>However, this is not in snippet.</p> <ul> <li>Stuff not in snippet</li> <li>More stuff not in snippet</li> </ul> </div>
Обычно при индексировании робот Google отрисовывает страницы, но это происходит не всегда.
Поэтому атрибут data-nosnippet
может извлекаться как до отрисовки, так и после нее. Чтобы избежать неопределенности, не используйте JavaScript для добавления атрибута data-nosnippet
в существующие узлы или для его удаления из них.
Если вы добавляете элементы в структуру DOM при помощи JavaScript, указывайте атрибут data-nosnippet
в момент создания этих элементов. Если вы хотите применить атрибут data-nosnippet
к нестандартным элементам, размещайте их внутри тегов div
, span
или section
.
Использование структурированных данных
Метатеги robots определяют, какое количество контента Google может автоматически извлекать с веб-страниц и показывать в результатах поиска. Однако многие издатели также применяют структурированные данные schema.org, чтобы показывать в результатах поиска нужную им информацию. Заданные в метатегах robots ограничения не распространяются на структурированные данные, кроме значений article.description
и description
, которые указываются для творческих работ. Чтобы задать максимальную длину текстового фрагмента в результатах пои��ка с учетом этих значений description
, используйте правило max-snippet
. К примеру, если на странице есть структурированные данные для рецептов (recipe
), определенный ими контент может показываться в карусели рецептов независимо от ограничения длины текстового фрагмента. Длину текстового фрагмента можно ограничить при помощи max-snippet
, однако это правило тега robots (meta
) не действует, когда информация пред��ставляется с применением структурированных данных для расширенных результатов.
Вы можете редактировать типы структурированных данных и их значения на веб-страницах. Добавляйте или удаляйте информацию, чтобы роботу Google были доступны только нужные сведения. Обратите внимание, что структурированные данные могут использоваться в Поиске, даже если они объявлены внутри элемента с атрибутом data-nosnippet
.
Практическая реализация заголовка X-Robots-Tag
Заголовок X-Robots-Tag
можно добавить в HTTP-ответы с помощью файлов конфигурации в серверном ПО сайта. Например, на серверах Apache такие настройки хранятся в файлах .htaccess и httpd.conf. Преимущество использования заголовка X-Robots-Tag
в HTTP-ответах состоит в том, что с его помощью можно задать правила сканирования на уровне всего сайта, а поддержка регулярных выражений обеспечивает дополнительную гибкость.
Например, чтобы добавить заголовок X-Robots-Tag
с правилом noindex, nofollow
в HTTP-ответ для файлов .PDF
со всего сайта, включите небольшой фрагмент кода в корневой файл .htaccess
/httpd.conf
(Apache) или .conf
(NGINX).
Apache
<Files ~ "\.pdf$"> Header set X-Robots-Tag "noindex, nofollow" </Files>
nginx
location ~* \.pdf$ { add_header X-Robots-Tag "noindex, nofollow"; }
Заголовки X-Robots-Tag
можно использовать в тех случаях, когда для файлов недоступны теги HTML robots (meta
). В приведенном ниже примере правило noindex
X-Robots-Tag
добавляется для файлов изображений (.png
, .jpeg
, .jpg
, .gif
) на всем сайте:
Apache
<Files ~ "\.(png|jpe?g|gif)$"> Header set X-Robots-Tag "noindex" </Files>
nginx
location ~* \.(png|jpe?g|gif)$ { add_header X-Robots-Tag "noindex"; }
Заголовки X-Robots-Tag
также можно задать для отдельных статических файлов.
Apache
# the htaccess file must be placed in the directory of the matched file. <Files "unicorn.pdf"> Header set X-Robots-Tag "noindex, nofollow" </Files>
nginx
location = /secrets/unicorn.pdf { add_header X-Robots-Tag "noindex, nofollow"; }
Сочетание правил robots.txt с правилами индексирования и показа
Метатеги robots и HTTP-заголовки X-Robots-Tag
обнаруживаются при сканировании URL. Если сканирование страницы запрещено файлом robots.txt, ��о правила, касающиеся индексирования или показа контента, будут проигнорированы. Чтобы гарантировать выполнение правил, не следует запрещать сканирование URL, для которых они заданы.