Как убрать дубли страниц на сайте

Что такое дубли страниц - это страницы с абсолютно одинаковым содержанием и разными URL адресами.

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

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

Как найти дубли страниц на сайте?

Но для начала необходимо проверить — есть ли вообще повторяющиеся страницы на Вашем ресурсе и, если да, то какого типа эти страницы. Как это сделать?

  • Способ 1. Запрос в поиске «site:»

Можно воспользоваться командой «site:». Эта команда выдает результаты поиска по определенному сайту. Введя site:www.yoursite.com/page1, Вы увидите, есть ли в поиске дубли этой страницы.

  • Способ 2. Поиск по отрывку из статьи

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

Как бороться с дублями страниц?

301 редирект

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

При попадании поискового робота на дубликат страницы, на которой прописан 301 редирект, веб-сервер автоматически перенаправит его на страницу-оригинал. Прописываются все перенаправления в файле .htaccess, который находится в корневом каталоге сайта. Не стоит использовать 301 перенаправление (постоянный редирект), если вы планируете в дальнейшем как-то использовать страницу-копию. Для этого можно использовать 302 перенаправление (временное). Тогда склеивания страниц не произойдет.

При использовании 301 редиректа для удаления дублей страниц из индекса прежде всего надо определиться с главным зеркалом сайта. Для примера в качестве главного зеркала укажем http://site.ru Вам останется только поменять на адрес своего сайта

  • 301 Редирект с www.site.ru на site.ru

Для этого надо в файле .htaccess (файл находится в корне сайта) добавить следующие строки сразу после RewriteEngine On:

RewriteCond %{HTTP_HOST} ^www.site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

  • 301 редирект с site.ru/index.php на site.ru

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/ 
RewriteRule ^index\.php$ http://site.ru/ [R=301,L]

Аналогичным образом можно избавиться от дублей типа:

http://site.ru/index
http://site.ru/index.html
http://site.ru/index.htm

Если Вы, к примеру, хотите склеить страницы http://site.ru и http://site.ru/page123, то в файле .htaccess следует прописать следующее:

Redirect 301 /page123 http://site.ru

Теперь при попытке зайти на страницу http://site.ru/page123 будет срабатывать перенаправление на главную.

Канонические ссылки

Другой способ указать оригинал — прописывать на страницах-дублях т.н. канонические ссылки. Это ссылки с атрибутом rel=canonical, иными словами в блоке head такой страницы прописано:

<link rel="canonical" href="http://site.ru/load" />

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

Например, в примере выше на сайте были 2 страницы-дубля:

http://site.ru/load
http://site.ru/load/

Указав на странице http://site.ru/load атрибут rel=canonical мы покажем поисковым системам, что эта страница является главной и именно ее надо индексировать.

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

robots.txt

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

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

При создании же robots.txt нам понадобится воспользоваться запрещающей директивой Disallow.

  • Правильный robots.txt для Joomla

User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Sitemap: http://site.ru/sitemap.xml

User-agent: Yandex
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Host: site.ru
Sitemap: http://site.ru/sitemap.xml

  • Правильный robots.txt для Wordpress

User-agent: *
Disallow: /wp-admin
Disallow: /wp-includes 
Disallow: /wp-content/plugins 
Disallow: /wp-content/cache 
Disallow: /wp-content/themes 
Disallow: /trackback 
Disallow: */trackback
Disallow: */*/trackback 
Disallow: */*/feed/*/ 
Disallow: */feed 
Disallow: /*?* 
Disallow: /tag
Sitemap: http://site.ru/sitemap.xml

User-agent: Yandex 
Disallow: /wp-admin 
Disallow: /wp-includes 
Disallow: /wp-content/plugins 
Disallow: /wp-content/cache 
Disallow: /wp-content/themes 
Disallow: /trackback 
Disallow: */trackback 
Disallow: */*/trackback 
Disallow: */*/feed/*/ 
Disallow: */feed 
Disallow: /*?* 
Disallow: /tag 
Host: site.ru 
Sitemap: http://site.ru/sitemap.xml

Что означают эти строки:

  • User-agent: * - правила описанные в ниже этой строки будут действовать для всех поисковых роботов
  • User-agent: Yandex - правила действуют только для робота Яндекса
  • Allow: - разрешить индексирование (обычно не пишут)
  • Disallow: запрещено индексировать страницы в адресе котроых есть то что описано в строке.
  • Host: site.ru — Основное зеркало сайта
  • Sitemap: — ссылка на XML-карту сайта
  • "*" - любая последовательность символов в адресе страницы

Борьба с дублями страниц в Wordpress

Каким должен быть файл robots.txt для Wordpress мы уже рассмотрели выше. А теперь поговорим о плагинах, которые позволяют бороться с дублями и вообще незаменимы для оптимизатора сайтов на этом движке.

Yoast SEO - Один из самых популярных плагинов для Wordpress, позволяющим бороться с проблемой дублей. С его помощью можно заставить Wordpress прописывать канонические ссылки, запретить индексацию страниц с постраничным разбиением (рубрики), скрыть архивы автора, удалить /category/ из URL и многое другое.

All in One Seo Pack - Аналогичный плагин, не менее популярный и выполняющий похожие функции. Какой из них использовать - решать вам.

Как убрать дубли страниц в Joomla

Несмотря на то, что Joomla! поддерживает автоматическое создание канонических ссылок, некоторые дубли все равно могут попадать в индекс поисковых машин. Для борьбы с дублями в Joomla! можно использовать robots.txt и 301редирект. Правильный файл rorbots.txt описан выше. 

Ну, а чтобы включить ЧПУ (человеко понятные урлы) в Joomla достаточно переименовать htaccess.txt в .htaccess и добавить туда сразу после RewriteEngine On:

RewriteCond %{HTTP_HOST} ^www.site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://site.ru/ [R=301,L]

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

Таким образом мы избавимся от дублей типа www.site.ru и site.ru/index.php, потому что в этой CMS возникает такая проблема с дублями. И поисковики часто индескируют страницы типа site.ru/index.php. Теперь после всех манипуляций при попытке зайти на страницу, например, www.site.ru посетителя перекинет на главную, т.е. site.ru.

Из плагинов для Джумлы могу посоветовать JL No Doubles - плагин убирает дубли страниц в компоненте com_content. Возможен 301 редирект на правильную страницу, либо вывод 404 ошибки.

Специальные сервисы для создания robots.txt и .htaccess

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

seolib.ru - На нем можно не только создать, но и протестировать Ваш robots.txt

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

0
Читайте также:
 
Напишите ваш комментарий
или разместить анонимно
Loading comment... The comment will be refreshed after 00:00.