RSS-лента

Лучшие CMS интернета бесплатно для создания сайта

Авг
11

Дубли страниц, поиск и удаление дублей страниц на сайте

Всем привет. При использовании различных CMS, движки часто создают дубли страниц (страницы с одинаковым содержанием, но доступные по разным Url адресам). Вроде бы ничего страшного, так как эти дубли страниц находятся на одном сайте, и как правило возникают в результате технических недоработок CMS, но поисковые системы к сожалению так не думают. Поисковые системы при обнаружении на сайте дублей, занижают сайт в ранжировании, а в некоторых случаях накладывают фильтр АГС (Яндекс) или фильтр Панда (Гугл). Поэтому следует, как можно скорее после создания сайта удалить дубли страниц и искоренить их появление в дальнейшем.

дубли страниц Дубли бывают двух видов:

  • Не полные – это когда на странице присутствует лишь часть дублированного контента. К примеру, если цитировать в одной статье части текста с другой страницы, при этом, не используя тег <Noindex>, то появится не полный дубль.
  • Полные – две страницы по разным адресам имеют полностью идентичный контент (наиболее опасные).

Один из видов этих дублей присутствует практически на всех блогах в интернете, и веб-мастеры просто ещё не знают о них. Дубли медленно “Убивают” ваш блог, и поэтому от них нужно избавиться ещё до того, как поисковые системы обратят на них внимание.

Чем страшны дубли страниц

В основном дубли страниц появляются в индексе поисковой системы Гугл в результате того что этот поисковик рассматривает файл robots.txt чисто в рекомендательном смысле, и ему не очень важно закрыты там какие-то рубрики или дубли от индексации или нет. Рано или поздно, он все равно их проиндексирует. Так чем же страшны так дубли? Как я уже писал выше, дубли страниц занижают сайт в ранжировании поисковых систем. А если у вас к примеру в посте имеется не закрытая внешняя ссылка (в комментариях,теле поста), то эта ссылка отдает статический вес не только с прямого Url, но и с дублей страницы. В итоге вы думаете что всего одна ссылка, а на самом деле их 300 или более.

Поиск дублей страниц

Но, как их можно удалить, если не знать где они находятся? Никак, поэтому для начала нужно их обнаружить. Это можно сделать тремя способами:

1. При помощи веб-мастерской поисковой системы Google. Авторизировавшись в веб-мастерской, и перейдя по вкладке “Оптимизация” -> “Оптимизация Html” вы увидите таблицу, где будет указано число повторяющихся тегов <Title> и мета-описаний. С помощью этой таблицы вы с лёгкостью сможете найти полные копии страниц, однако найти частичные дубли будет невозможно. Поэтому рекомендуется использовать и следующие способы поиска дублей.

дубли страниц сайта

2. С помощью программы XENU (Xenu Link Sleuth). Данная программа позволяет провести глубокий аудит сайта, в который входит и поиск дублированных страниц. Всё что нужно сделать – это ввести адрес своего сайта в специальную строку, получить аудит и отфильтровать результаты по заголовку. Далее будет очень легко искать визуальные совпадения. Но как бы всё ни было удобно, этот способ поиска дублей имеет всё тот же недостаток – найти частичное дублирование невозможно. Этот способ вы можете использовать если у вас нет доступа к Google WebMasters, или вы просто не хотите лишний раз бегать по страницам, а желаете быстро получить результат.

дубли страниц в программе XENU

3. При помощи поисковой выдачи. Откройте поисковую систему Google, и введите запрос “site:mysite.ru – site:mysite.ru/&”. Естественно, вместо “mysite.ru” вам нужно ввести адрес своего ресурса.Давайте подробней разберём эту формулу: site:mysite.ru показывает страницы ресурса, которые находится в общем индексе, а site:mysite.ru/& показывает страницы, которые просто участвуют в поиске, и находятся в основном индексе.

дубли страниц в гугле

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

типы дублей страниц

Как вы могли заметить в wordpress имеется много различных типов дублей страниц. Рассмотрим каждый тип по порядку.

Типы дублей страниц

Итак, после проделанной операции по поиску дублей страниц Вы установили: какие дубли страниц у вас уже есть занесенные в индекс, а каких еще пока нет. Всего имеется 10 типов дублей, не считая те которые возможны у вас из-за различных плагинов и прочего мусора:

  • more — образуется в результате, отделения анонса от статьи. Этот дубль находится в рубриках и может иметь вид:  «читать далее», «[…]», «more»

В Гугле находятся при помощи команды: site:mysite.ru more

  • feed — образуется в результате, добавления статьи в RSS ленту.

В Гугле находятся при помощи команды: site:mysite.ru feed

  • tag — образуется в результате, добавления статьи в теги (метки).

В Гугле находятся при помощи команды: site:mysite.ru tag

  • page — образуется в результате, установленной на блоге пагинации. Находятся в рубриках: 1-я страница, 2-я страница и.т.д

В Гугле находятся при помощи команды: site:mysite.ru page

  • replytocom — образуется в результате включенных древовидных комментариев. Находятся на всех страницах, где имеются вложенные комментарии.

В Гугле находятся при помощи команды: site:mysite.ru replytocom

  • comment-page — образуется в результате комментирования страницы.

В Гугле находятся при помощи команды: site:mysite.ru comment-page

  • attachment — образуется в результате добавления изображений (различные размеры).

В Гугле находятся при помощи команды: site:mysite.ru attachment

  • attachment_id — образуется в результате добавления изображения с ссылкой.

В Гугле находятся при помощи команды: site:mysite.ru attachment_id

  • category — образуется в результате создания рубрик.

В Гугле находятся при помощи команды: site:mysite.ru category

  • trackback — образуются в результате уведомлений сайтов.

В Гугле находятся при помощи команды: site:mysite.ru trackback

После нахождения этих дублей, вы можете удалить их и отредактировать движок. Теперь давайте разберём как это сделать.

Проверяем и удаляем дубль главной страницы сайта

На главной странице возможны дубли типа:

  • mysite.ru/index.php
  • mysite.ru/
  • www.mysite.ru

Определить есть у вас такие дубли страниц или нет, можно вставив данные ссылки в строку поиска браузера, предварительно заменив mysite.ru на Url вашего сайта. Если, такие страницы обнаружены нужно сделать 301 редирект, добавив в файл .htacсess следующие строки:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Как удалить внутренние дубли страниц

На самом деле простое удаление дублей не даст положительных результатов. Нужно исправить саму причину появления дублей, ведь в противном случае, после удалений одного дубля будет появляться другой. Давайте разберём основные причины появления дублей и способы их удаления.

  • Дубли replytocom

Появляется на движке WordPress при использовании древовидных комментариев при помощи встроенной функции самого движка. При использовании этой функции комментарии приобретают древовидный вид, но вот при нажатии на вкладку “Ответить” появляется ссылка вида “ http://my-site.ru/text/?replytocom=116#respond” По сути, эта ссылка отражает ту же самую страницу, что и http://my-site.ru/text. Но для поисковых систем это совершенно разные ссылки, которые имеют одинаковый контент. То есть дубль.

Решение простое: Отключить встроенную функцию древовидных комментариев на движке WordPress, и использовать какой-либо плагин, который реализует такие комментарии при помощи JavaScript.

Также не помешает сделать 301 редирект. С редиректом, когда роботы или поисковики будут посещать страницу-дубль, их будет перебрасывать на оригинальную страницу. Для этого на хостинге в корневой папке вашего сайта найдите файл .htacсess (если такого файла нет то просто создайте текстовый документ без названия, а далее измените расширение), вставьте в него следующие строки:

RewriteCond %{QUERY_STRING} ^replytocom= [NC]
RewriteRule (.*) $1? [R=301,L]
  • Дубли category и page

Многие считают, что открывая категории (рубрики) для индексации, мы создаём множество дублей к каждой статье. Другие веб-мастеры считают, поисковые системы умеют отличать дубли от анонсов, и ничего закрывать не нужно.
Если вы из тех, кто считает, что рубрики являются дублями, то для исправления достаточно просто добавить в ваш файл function.php, в самый конец перед знаком ?> следующие строки:

/Добавляем meta robots noindex,nofollow Для страниц ***/
function my_meta_noindex () {
if (
is_paged() // Все и любые страницы пагинации
) {echo "".'<meta name="robots" content="noindex, nofollow" />'."\n";}
}
add_action('wp_head', 'my_meta_noindex', 3);

Они добавят на все категории мета тег:

<meta name="robots" content="noindex,follow" />,

а на страницы пагинации мета тег:

<meta name="robots" content="noindex, nofollow" />
  • Дубли more

Избавится от таких дублей можно при помощи редактирования файла wp-includes\post-template.php В этом файле нужно найти строчку:

$output .= ‘ <a href=»‘. get_permalink() . «#more-$id\» class=\»more-
link\»>$more_link_text</a>»;

В этой строчке нужно удалить #more-$id, оставить только «/» и сохранить файл.

  • Дубли feed, comment-page, attachment, attachment_id, trackback

Все эти дубли страниц можно удалить только при помощи 301 редиректа. для этого добавляем в файл .htacсess следующие строки:

RewriteRule (.+)/feed /$1 [R=301,L]
RewriteRule (.+)/comment-page /$1 [R=301,L]
RewriteRule (.+)/trackback /$1 [R=301,L]
RewriteRule (.+)/comments /$1 [R=301,L]
RewriteRule (.+)/attachment /$1 [R=301,L]
RewriteCond %{QUERY_STRING} ^attachment_id= [NC]
RewriteRule (.*) $1? [R=301,L]

В итоге всех действий с файлом .htacсess он у вас должен принять следующий вид:

# BEGIN WordPress
RewriteRule (.+)/feed /$1 [R=301,L]
RewriteRule (.+)/comment-page /$1 [R=301,L]
RewriteRule (.+)/trackback /$1 [R=301,L]
RewriteRule (.+)/comments /$1 [R=301,L]
RewriteRule (.+)/attachment /$1 [R=301,L]
RewriteCond %{QUERY_STRING} ^attachment_id= [NC]
RewriteRule (.*) $1? [R=301,L]
RewriteCond %{QUERY_STRING} ^replytocom= [NC]
RewriteRule (.*) $1? [R=301,L]
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

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

User-agent: *
Disallow: /wp-includes
Disallow: /wp-feed
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Host: site.ru
Sitemap: http://site.ru/sitemap.xml
User-agent: Googlebot-Image
Allow: /wp-content/uploads/
User-agent: YandexImages
Allow: /wp-content/uploads/

Решайте проблему сразу, ведь потом может быть уже поздно.

Получай первым обновления блога!

Введите Ваш e-mail:


Комментарии (5) на “Дубли страниц, поиск и удаление дублей страниц на сайте”

  • Рамазан (1 коммент.) 18 Сентябрь 2015 в 19:42

    Хорошая статья, полезная.

  • Алексей (11 коммент.) 25 Сентябрь 2015 в 15:26

    Отличная статья! Все по делу. Только одно, но!
    Уважаемый автор, нельзя ли дополнить статью рассказом о том, как избавиться от дублей /product-tag/ — возникающий при добавлении меток. А то Вы про их обнаружение рассказали, а как от них избавляться почему-то нет(
    Буду безмерно признателен!

  • Дмитрий Смотрин (1 коммент.) 17 Январь 2016 в 11:51

    Спасибо за статью. Очень помогла

  • Игорь (8 коммент.) 4 Май 2016 в 0:37

    Статья хорошая, спору нет, но меня тоже интересует, как и Алексея, как убрать дубли «tag».
    Спасибо за ответ

  • Максим (8 коммент.) 10 Июль 2016 в 15:47

    В качестве дополнения: при добавлении в .htaccess строки «RewriteRule (.+)/comments /$1 [R=301,L]» перестаёт отображаться значок комментариев из шаблона темы, имеющий имя comments.png. Решил проблему переименованием картинки в comment.png и правкой файлов, ответственных за вывод этого изображения.

Оставить комментарий


вверх