Рейтинг нашей компании
Пн-Пт 09:00-18:00,
Сб-Вс Выходной
Работаем по всей России!

Как убрать ошибку дублей с GET-параметрами

07 апреля 2022
Как убрать ошибку дублей с GET-параметрами

 

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

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

Скриншот с Яндекс.Вебмастера про ошибку страниц дублей с GET-параметрами

Фото: Скриншот с Яндекс.Вебмастера про ошибку страниц дублей с GET-параметрами.

В Вебмастере можно перейти по ссылке «Посмотреть примеры страниц», чтобы увидеть, какие страницы дубли обнаружил Яндекс.

Примеры страниц дублей и GET-параметры

Фото: Примеры страниц дублей и GET-параметры

Такую картину можно увидеть в своем Вебмастере или аналогичную этой. В колонке с Get-параметрами будут указаны все атрибуты. Он может быть один или множество.

Что такое GET-Параметры?

GET-параметр в адресе страницы Url – это динамический элемент, который позволяет менять содержимое страницы. Он прописывается сразу после знака «?» и может быть разделен специальным символом &. Часто GET-параметры используются в интернет-магазинах, чтобы отображать товары в листингах, которые отсортированы по фильтру магазина.

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

Например, url могут содержать непонятные для простого пользователя символы:

/#category_id=60&page=1&path=60&sort=p.price&order=ASC&limit=36&route=product

Результаты поиска выглядят так:

/search/?search=кухни

 

Есть ли польза от Clean-param для сайта?

Очень многие ищут информацию, как исправить ошибку дублей страниц Get-параметрами? И как правильно прописать директиву Clean-param в файле robots.txt? А нужно ли это делать?

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

Как использовать Clean-param?

Хочется сказать, что директива Clean-param учитывается только поисковой системой Яндекс, а Google к ней равнодушен. Поэтому прописывать ее нужно в разделе robots.txt, который имеет команды для Яндекса (ниже User-agent: Yandex). Выглядеть это может примерно, вот так:

  • Clean-param: path
  • Clean-param: id
  • Clean-param: index_php
  • Clean-param: product_name
  • Clean-param: dev

Если у вас нет отдельно стоящих юзер-агентов, то можно Clean-param прописать и в общих правилах ко всем ботам. Это межсессионная директива, которая будет читаться роботами в любом месте robots.

Показываем на примерах

Давайте детально разуберёмся, как писать директиву в разных случаях. Ниже мы приведем примеры адресов с GET-парfметрами и строки, которые нужно прописать в файле robots.txt.

  • www.example.com/catalog/book?ref=site_1&book_id=123
  • www.example.com/catalog/book?ref=site_2&book_id=123
  • www.example.com/catalog/book?ref=site_3&book_id=123

Как мы видим, отличие только в одной цифре, а страницы выглядят идентично.

Прописываем:

Clean-param: ref /catalog/book

Поэтому Яндекс, прочитав данную директиву, склеит эти страницы в одну:

www.example.com/catalog/book?book_id=123 и эта страница будет доступна в поиске, а остальные будут автоматически удалены.

Для идентификаторов:

www.site2.com/index.php?page=1&sid=2564126ebdec301c607e5df

www.site2.com/index.php?page=1&sid=974017dcd170d6c4a5d76ae

Прописываем:

Clean-param: sid / index.php

Если GET-параметров в адресе несколько:

www.site.com/catalog/kreslo.php?art=681498605&t=8243&ref=1234

www.site.com/ catalog/kreslo.php?art=1e71c417a&t=8243&ref=3442

Прописываем:

Clean-param: art&t&ref /catalog/kreslo.php

Использование Disallow вместо Clean-param в robots.txt

Можно вместо Clean-param использовать директиву Disallow. Возьмем для примера, адрес, который мы использовали выше:

www.site.com/catalog/kreslo.php?art=681498605&t=8243&ref=1234

Тогда прописываем следующее:

  • Disallow: *?art=
  • Disallow: *&t=
  • Disallow: *&ref=

Мы закрываем от индексации все страницы, содержащие своём адресе эти динамические параметры. Но можно в этом случае сделать проще и прописать всего одну строчку: Disallow: *?.

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

 

Об авторе

Владимир Харченко seo специалист

Владимир Харченко

Ведущий SEO-специалист с 9-летним стажем работы в области продвижения сайтов и Веб-аналитики. Постоянно обучаюсь и усовершенствую имеющиеся навыки, изучаю изменения в поисковых системах и применяю на практике проверенные методики.