Описание и настройка директивы Clean-param — SEO на vc.ru
{«id»:13699,»url»:»\/distributions\/13699\/click?bit=1&hash=17cb10200bd7081f0bbd1c6c57e3ddf446f57986a2d2b9ec2131842fac882b1a»,»title»:»\u041a\u0435\u0439\u0441: \u043f\u043e\u0434\u043d\u044f\u043b\u0438 \u0432\u044b\u0440\u0443\u0447\u043a\u0443 \u043e\u0442 \u043e\u043d\u043b\u0430\u0439\u043d-\u0441\u0442\u0440\u0430\u0445\u043e\u0432\u0430\u043d\u0438\u044f \u0433\u0440\u0443\u0437\u043e\u0432 \u043d\u0430 700%»,»buttonText»:»»,»imageUuid»:»»,»isPaidAndBannersEnabled»:false}
Clean-param — директива файла robots.txt, которую поддерживают роботы «Яндекса». Она позволяет сообщить динамические параметры, которые присутствуют в URL страницы, но не изменяют её содержание. Это могут быть идентификаторы пользователя, сессии, параметры сортировки товаров и другие элементы.
16 019 просмотров
Например, имеются страницы:
- site.ru/catalog/category/?sort_field=PRICE&order=asc
- site.
- site.ru/catalog/category/?sort_field=id&order=asc
Все они содержат одинаковый контент, но имеют в своих URL-адресах параметры sort_field и order, которые определяют сортировку товаров на этой странице, но формально не меняют ее содержание. В результате у нас получается 3 страницы-дубликата.
Правильно настроить обработку таких страниц нам поможет директива Clean-param. Необходимо прописать её в файле robots.txt следующим образом:
User-Agent: Yandex … Clean-param: sort_field&order /catalog/category/
После этого индексироваться роботом Яндекса будет только одна страница: site.ru/catalog/category/, параметры sort_field и order учитываться не будут.
Данная настройка позволит снизить нагрузку на сервер, т.к. робот не будет загружать страницы с указанными параметрами, повысится эффективность обхода сайта роботом, и убережет Вас от появления в индексе дубликатов страниц.
Синтаксис директивы
Clean-param: p0[&p1&p2&..&pn] [path]
Поле p — это динамические параметры, влияние которых на индексацию необходимо устранить. Если таких несколько, их нужно перечислить через амперсанд, например, sort&price.
Поле path — префикс, указывающий путь применения директивы. Если его не указывать, Clean-param применится для всего сайта.
Файл robots.txt не имеет ограничений на количество указываемых директив Clean-param. В любом месте файла и количестве они будут учтены. В написании директивы учитывается регистр, а также длина правила ограничена 500 символами.
Пример применения
Допустим у нас имеется страница с такими get-параметрами:
- https://orteka.ru/catalog/kompressionnyi-trikotazh/golfy/?sort=popularity&order=asc
- https://orteka. ru/catalog/kompressionnyi-trikotazh/golfy/?sort=price&order=desc
Директива Clean-param должна иметь следующее содержание:
Clean-param: sort&order /catalog/kompressionnyi-trikotazh/golfy/
- sort&order — это динамическиt параметры, которые не нужно учитывать;
- /catalog/kompressionnyi-trikotazh/golfy/– префикс применения директивы, обозначает, что данные параметры не нужно учитывать только для страниц, начинающихся с /catalog/kompressionnyi-trikotazh/golfy/. Если необходимо, чтобы правило применялось ко всем страницам сайта, префикс указывать не нужно.
Весь справочник в статьях на vc.ru или на сайте.
Навигатор по первым пятидесяти заметкам.
Как настроить Clean-Param для файла robots.txt на Блоггер (Blogger)?
Столкнулся на одном из своих блогов на платформе Блоггер (Blogger) с появлением страниц-дублей с GET-параметрами. Произошло это после смены дефолтного шаблона, на сторонний. В разделе Вебмастер (Яндекс) по пути:
Диагностика -> Диагностика сайта
Появились сообщения о данных страницах:
Яндекс рекомендуем использовать директиву Clean-param в robots.txt, чтобы робот игнорировал незначащие GET-параметры и объединил все сигналы со страниц-копий на основной странице.
Если нет времени разбираться во всем самостоятельно, или понимаете, что не справитесь сами, найдите специалиста, который поможет вам решить вопрос. Защищенные сделки и доступные цены.
Как настроить свой файл robots.txt на Blogspot (Блогспот)?
Выбираем свой блог в аккаунте Блогспот (1.) и переходив в раздел «Настройки» (2.). Прокручиваем страницу «Настройки» и находим «Поисковые роботы и индексирование». Переключаем ползунок (3.) напротив параметра «Использовать собственный файл robots.txt» и нажимаем на пространство (4.) под параметром «Пользовательский файл robots.txt».
После этого, откроется небольшое окошко, в которое нам необходимо указать свои настройки (1. ) для robots.txt файла на Blogspot. После внесения настроек, не забываем их сохранить (2.).
Как настроить Clean-Param для файла robots.txt на Блоггер (Blogger)?
А тут проблема. Столкнулся с тем, что при попытке указать Clean-Param в файле robots.txt для Блоггер, при попытке сохранить внесенные изменения, получал сообщение об ошибке:
Содержимое файла robots.txt не соответствует правилам форматирования.
Связано это скорее всего с тем, что Google не распознает Clean-param. Для данной задачи, Google предоставляет инструмент «Параметры URL».
Однако, без четкого понимания того, что вы будете делать, настоятельно не рекомендую использовать данный инструмент.
В нашем случае с настройкой Clean-param по рекомендации Яндекса, мы можем решить посредством закрытия от индексации URL адресов с параметрами. Для этого добавляем следующие данный в свой robots.txt файл:
User-agent: Mediapartners-Google
Disallow:User-agent: *
Disallow: /search
Disallow: /*?
Allow: /Sitemap: https://имя_вашего_блога. blogspot.com/sitemap.xml
Проверить свой файл robots.txt, вы можете в Google Search Console. Добавьте свой robots.txt и укажите URL с параметром. Проверьте результат, URL должен блокироваться от индексации:
Теперь проверьте, индексируется ли ваш URL без параметров:
Аналогично, проверяем результат работы файла robots.txt для Блоггер в Вебмастер Яндекс. Для этого в кабинете Вебмастера, выбираем свой сайт и переходим в разделе «Инструменты» (1.) в параметр «Анализ robots.txt» (2.). Нажимаем «Проверить» (3.) для определения настроек файла
После, прокручиваем страницу ниже и указываем свои страницы-дубли с GET-параметрами, после чего, нажимаем «Проверить» (1.). Все ссылки с GET-параметрами, должны быть закрыты в robots.txt от индексации (2.):
Аналогично проверяем страницы без GET-параметров. В результате, страницы должны быть открыты для индексации:
После данных манипуляций и настроек файла robots.txt для Блоггер, переходим в «Проблемы сайта» (по пути «Диагностика» -> «Диагностика сайта») и напротив проблемы, нажимаем «Проверить».
Через некоторое время, мы должны получить положительный результат. В разделе «Диагностика сайта», должно пропасть сообщение о критической ошибке:
Недостатки.
Было замечено, что после создания данного файла robots.txt, Google Search Console сообщает в разделе «Покрытие» о том, что некоторые страницы были проиндексированы, несмотря на запрет индексации в robots.txt:
При проверке любой ссылки с пометкой «Предупреждение» и типом «Проиндексировано, несмотря на блокировку в файле robots.txt», мы увидим сообщение, что страница есть в индексе, хотя URL заблокирован к индексации в файле robots.txt:
При детальном просмотре, можно увидеть, что проблемы с индексацией, возникают там, где страница была проиндексирована мобильным пауком (Googlebot-Mobile):
Данная страница, имеет пометку, что она заблокирована в файле robots.txt для сканирования. При этом, она по прежнему разрешена для индексации.
Связанно это скорее всего с тем, что мобильный Googlebot-Mobile, заходил по ссылке с GET-параметром
?m=1
Так как мы, заблокировали все подобные GET-параметры в своем robots. txt, мы и получаем подобную ошибку. Примечательно и то, что если проверить этот же URL в инструменте проверки robots.txt на доступность страницы на доступность Googlebot-Mobile, мы не получим ошибки:
При этом, наша ссылка без GET-параметров. Стоит нам проверить ссылку с GET-параметром
?m=1 и мы получим блокировку индексации. Верно, именно этого мы и добивались, чтобы исключить дубли страниц. Скорее всего, мобильные Googlebot-Mobile заходят на сайт с мобильных устройств.
Заключение.
Несмотря на то, что платформа Блоггер (Blogger) не дает возможности указать в своем robots.txt директиву Clean-param, мы можем использовать обходной вариант и исправить проблемы на блоге Blogger с дублями страниц, у которых присутствуют GET-параметры.
Способ рабочий и универсальный, так как позволяет исключить дубли страниц черен настройки robots.txt как для поисковой системы Яндекс, так и для поисковика Google.
При этом, возникают проблемы сканирования страниц ботом Googlebot-Mobile. Это приводит к появлению предупреждений в Google Search Console раздела «Покрытие», что часть страниц были проиндексированы, несмотря на запрет в robots.txt. К сожалению, мне не известны способы решения данной проблемы. Если вы найдете решение для Blogger, поделитесь им в комментариях.
Другая проблема в том, что если игнорировать проблему с ошибками GET-параметрами в Яндекс. Вебмастер, вы рискуете потерять Индекс качества сайта (ИКС). У меня так понизили сайт на 10. Как только исправил проблему с GET-параметрами, ИКС вернулся обратно.
Использовать ли данное решение на своем блоге на платформе Blogger или нет, зависит от того, на какую аудиторию рассчитан ваш сайт. При получении трафика из Google, возможно и не стоит использовать данное решение. Если основной трафик у вас из Яндекса, естественно, игнорировать ошибки с GET-параметрами нельзя, так как это негативно скажется на позициях вашего сайта. В любом случае, используйте данный вариант, ТОЛЬКО если у вас появились проблемы с GET-параметрами. Если у вас их нет (не отображаются ошибки в Яндекс Вебмастер), оставляйте файл robots.txt по умолчанию и ничего не изменяйте!
И помните, что если позволяют финансы, лучше найдите специалиста.
Добавлено 07.11.2021
У меня в поиске Google, начали появляться страницы без описания, с указанием на справку Google.
Проверив Вебмастер Яндекс и убедившись, что пропали дубли страниц, было принято решение, отключить вышеприведенный robots.txt, из-за проблем с индексацией сайта мобильным ботом Google. При этом, у меня не было указано в шаблоне блога канонические ссылки на страницах. Как так вышло, даже не знаю. В связи с этим, прописал код в шаблон:
<link expr:href=’data:blog.url.canonical’ rel=’canonical’/>
Для добавления вышеприведенного кода, переходим в «Тема» (1.) и нажимаем на раскрывающийся (2.) список (напротив «НАСТРОИТЬ»):
В выпадающем списке, выбираем «Изменить HTML»:
И вставляем вышеприведенный код (2. ), после <head> (1.):
Это позволит нам сообщить поисковым системам, что все data:blog.url (ссылки) являются каноническими.
После, ищем все
data:blog.url
в коде и добавляем
.canonical
Для этого, нажимаем в редакторе кода CTRL -> F и в появившемся поле поиска (1.), указываем:
data:blog.url
Нажимаем Enter и в найденных результатах, добавляем:
.canonical
После внесения изменений, не забываем сохранить правки:
В результате, наши страницы, должны показывать канонический адрес, без GET-параметров (?m=1, ?m=0, ?comments_89917 и т. п.):
Мной было также обнаружено, что в стандартных новых темах Blogger, прописан канонический адрес в шаблоне.
Таким образом, как и указывал в начале поста, если будете использовать сторонние темы, всегда их старайтесь проверять.
На данный момент, пока наблюдаю за ситуацией. Если дублей больше не появится с GET-параметрами в Яндексе или Google, отпишусь в данной заметке. Если будет новая информация, обязательно ее добавлю.
Если у вас есть свое решение данной проблемы, пожалуйста, оставляйте комментарии. Ваш опыт и информация, может помочь другим пользователям. Успехов.
Добавлено 04.12.2021
В панели Яндекс Вебмастер, наблюдаю картину, как страницы с GET-параметрами, автоматически исключаются из индекса и не дублируются, так как не являются каноническими страницами.
Аналогичная ситуация и в Google Search Console. Таким образом, еще раз рекомендую владельцам сайтов на платформе Блоггер, не использовать файл роботс (robots.txt) приведенный в начале заметки, а указать канонический (canonical) адрес для страниц. Это позволит сохранить нормальную индексацию блога мобильным роботом Google. Если будут уточнения и дополнения из вашего опыта, пожалуйста, делитесь ими в комментариях. Ваш опыт, будет полезен и другим. Заранее, спасибо и успехов в продвижении блогов на Блогспот.
Добавлено 18.01.2022
Если у вас сообщения с GET-параметрами следующего вида на конце url-страниц:
?showComment=
Пример на скрине:
Можно использовать следующий robots.txt для Блоггера:
User-agent: *
Disallow:
Disallow: /search
Disallow: /?showComment=
Sitemap: https://pc103help.blogspot.com/sitemap.xml
Добавлено 02.05.2022
Мне попалось интересное и полезное видео, по настройке файла robots.txt на Блоггер. Ставка на поисковую систему в Яндекс.
Добавляем файл Robots в Blogger для индексации блога в Яндекс:
И будет полезно ознакомится с новой заметкой, которая позволит ускорить индексацию сайта в поисковой системе Google: Как проиндексировать сайт в Google и повысить видимость? Способ для любых сайтов.
Директива Clean-param — Webmaster. Справка
Используйте директиву Clean-param, если URL-адреса страниц сайта содержат параметры GET (например, идентификаторы сеансов, идентификаторы пользователей) или теги (например, UTM), которые не влияют на их содержимое.
Примечание. Иногда для закрытия этих страниц используется директива Disallow. Мы рекомендуем использовать Clean-param, так как эта директива позволяет перенести некоторые накопленные метрики на основной URL или сайт.
Как можно полнее укажите директиву Clean-param и поддерживайте ее в актуальном состоянии. Новый параметр, не влияющий на содержимое страницы, может привести к дублированию страниц, которые не следует включать в поиск. Из-за большого количества таких страниц робот медленнее сканирует сайт. Это означает, что для отображения важных изменений в результатах поиска потребуется больше времени.
Робот Яндекса использует эту директиву, чтобы избежать повторной загрузки дублирующейся информации.
Например, ваш сайт содержит следующие страницы:
www.example.com/some_dir/get_book.pl?ref=site_1&book_id=123 www.example.com/some_dir/get_book.pl?ref=site_2&book_id=123 www.example.com/some_dir/get_book.pl?ref=site_3&book_id=123
Параметр ref используется только для отслеживания того, с какого ресурса был отправлен запрос. Это не меняет содержимое страницы. Все три URL будут отображать одну и ту же страницу с книгой book_id=123. Тогда, если указать директиву следующим образом:
User-agent: Яндекс Запретить: Clean-param: ref /some_dir/get_book.pl
робот Яндекса соберет все адреса страниц в один:
www.example.com/some_dir/get_book.pl?book_id=123
Если такая страница есть на сайт, он включается в результаты поиска.
Clean-param: p0[&p1&p2&. .&pn] [путь]
В первом поле перечислите параметры, которые робот не должен учитывать, разделенные символом &. Во втором поле укажите префикс пути для страниц, к которым должно применяться правило.
Примечание. Директива Clean-Param является межсекционной, поэтому ее можно указывать в любом месте файла robots.txt. Если указано несколько директив, все они будут учтены роботом.
Префикс может содержать регулярное выражение в формате, аналогичном используемому в файле robots.txt, но с некоторыми ограничениями: можно использовать только символы A-Za-z0-9.-/*_. Однако символ * обрабатывается так же, как и в файле robots.txt: символ * всегда неявно добавляется в конец префикса. Примеры:
Параметр очистки: s /forum/showthread.php
означает, что параметр s игнорируется для всех URL-адресов, начинающихся с /forum/showthread.php. Второе поле является необязательным, и в этом случае правило будет применяться ко всем страницам сайта.
С учетом регистра. Максимальная длина правила составляет 500 символов. Примеры:
Чистый параметр: abc /forum/showthread.php Чистый параметр: sid&sort /forum/*.php Clean-param: someTrash&otherTrash
# для таких URL-адресов, как: www.example1.com/forum/showthread.php?s=681498b9648949605&t=8243 www.example1.com/forum/showthread.php?s=1e71c4427317a117a&t=8243 #robots.txt будет содержать: User-agent: Яндекс Запретить: Чистый параметр: s /forum/showthread.php
# для таких URL-адресов, как: www.example2.com/index.php?page=1&sid=2564126ebdec301c607e5df www.example2.com/index.php?page=1&sid=974017dcd170d6c4a5d76ae #robots.txt будет содержать: User-agent: Яндекс Запретить: Clean-param: sid /index.php
#если таких параметров несколько: www.example1.com/forum_old/showthread.php?s=681498605&t=8243&ref=1311 www. example1.com/forum_new/showthread.php?s=1e71c417a&t=8243&ref=9896 #robots.txt будет содержать: User-agent: Яндекс Запретить: Clean-param: s&ref /forum*/showthread.php
#если параметр используется в нескольких скриптах: www.example1.com/forum/showthread.php?s=681498b9648949605&t=8243 www.example1.com/forum/index.php?s=1e71c4427317a117a&t=8243 #robots.txt будет содержать: User-agent: Яндекс Запретить: Чистый параметр: s /forum/index.php Чистый параметр: s /forum/showthread.php
Яндекс.Вебмастер поможет найти дубликаты страниц с незначимыми GET-параметрами
RSN > Блог > Яндекс.Инструменты и Метрика для веб-мастеров > Яндекс.Вебмастер поможет найти дубликаты страниц с незначимыми GET-параметрамиЯндекс.Инструменты и Метрика для веб-мастеровСообщение от Дэн Тейлор 27 августа 2021 г. 27 августа 2021 г.
Теперь найти одинаковые страницы на сайте стало проще.
В разделе «Диагностика сайта» Яндекс Вебмастер Инструментов появилось специальное уведомление, которое сообщит вам о дублях из-за GET параметров.
Подписываться на уведомления не нужно, уведомление появится само. Если найдены дубликаты:
Вам необходимо зайти в Вебмастер, открыть в поиске раздел Страницы, выбрать в таблице Исключенные страницы.
Скачать архив (подходящий формат можно выбрать внизу страницы) и просмотреть загруженный файл: страницы-дубликаты будут иметь статус ДУБЛИК.
Это полезно, потому что:
- Когда на сайте много дубликатов, роботы тратят больше времени и ресурсов на их обход, а не на ценный контент. Это значит, что ценные страницы на сайте будут медленнее попадать в поиск.
- Так как поисковый робот случайным образом выбирает, какие из дубликатов показывать в поиске, то в поиск могут попасть не те страницы.
- Если в clean-param не добавлены несущественные параметры, робот может просканировать эти страницы и считать их разными, не объединяя их в поиске. Тогда поисковый робот будет получать разные неагрегированные сигналы по каждому из них. Если бы все сигналы были получены одной страницей, то у нее были бы шансы оказаться выше в поиске.
- Чрезмерное сканирование роботом также приводит к чрезмерной нагрузке на сайт.
- Добавьте директиву Clean-param в файл robots.txt, чтобы робот не учитывал несущественные GET-параметры в URL. Робот Яндекса, использующий эту директиву, не будет многократно сканировать повторяющийся контент. Это значит, что эффективность сканирования повысится, а нагрузка на сайт снизится.
- Если нет возможности добавить директиву Clean-param, необходимо указать канонический адрес страницы, которая будет участвовать в поиске. Нагрузку на сайт это не снизит: роботу Яндекса все равно придется просканировать страницу, чтобы узнать о rel=canonical. Поэтому в качестве основного метода рекомендуется использовать Сlean-param.
- Если по каким-то причинам предыдущие пункты не подходят, можно просто закрыть дубликаты от индексации с помощью директивы Disallow.