Как запретить индексацию всех страниц с определенным get-параметром в robots.txt?
Яндекс пожаловался на то, что присутствует некоторое кол-во дубликатов страниц с get-параметром.
Ссылка на подобную страницу выглядит примерно так: site.ru/blog/article?layout=new
Параметр всегда одинаков, но его значение меняется. Как запретить индексацию всех ссылок с layout=""? Насколько правильным будет Disallow: *?*layout=
Ответы (2 шт):
Эта конструкция абсолютно верная:
Disallow: *?*layout=
Однако надо учитывать, что она запретит индексацию всех страниц, которые содержат параметр layout, независимо от его положения в списке параметров и наличия других параметров в адресе. Т.е. все указанные ниже примеры страниц не будут индексироваться:
site.ru/blog/article?layout=new
site.ru/blog/article?layout=old
site.ru/blog/article?layout=old&author=Example
site.ru/blog/article?page=1&layout=fashion
site.ru/blog/article?page=2&layout=new&author=Example
Я делаю это через Clean-param: в robots.txt по двум причинам:
- Снижается нагрузка на сервер обхода.
- Если закрывать от индекса с помощью Disallow или тега noindex, тогда поисковики так же не будут индексировать и учитывать обратные ссылки на такие страницы. А если закрывать от индекса этим методом, тогда беклинки учтутся сайту.
Эти плюсы относятся только к Yandex!
А в Google получите ошибку в robots.txt, что-то не совмещаются в этом моменте. Но я ее игнорирую и всё нормально.
Для гугла, с моей точки зрения решать проблему таких дублей с помощью этого чудесного инструмента, почитайте, поймете все плюсы. А если не поймете, то лучше не трогайте!