среда, 4 марта 2015 г.

5 способов избавится от дубликатов страниц на вашем сайте


В данном обзоре рассмотрим как найти и навсегда удалить дубли страниц.

 Как возникают дубликаты страниц

Основные причины появления дублей — несовершенство CMS сайта, практически все современные коммерческие и некоммерческие CMS генерируют дубли страниц. Другой причиной может быть низкий профессиональный уровень разработчика сайтов, который допустил появление дублей.

 Какие бывают дубли страниц

1.  Главная страница сайта, которая открывается с www и без www 
пример www.site.ua и site.ua
site.ua/home.html и  site.ua/
2.  Динамическое содержание сайта с идентификаторами ?,  index.php, &view
site.ua/index.php?option=com_k2&Itemid=141&id=10&lang=ru&task=category&view=itemlist
site.ua/index.php?option=com_k2&Itemid=141&id=10&lang=ru&layout=category&task=category&view=itemlist
3. Со слешем в конце URL и без
site.ua/cadok/
site.ua/cadok
4. Фильтры в интернет-магазине (пример VirtueMart)
site.ua//?Itemid=&product_book&
5. Странички печати 
site.ua/cadok/?tmpl=component&print=1&layout=default&page=»

 Какую опасность несут в себе дубли страниц

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

 Как обнаружить дубликаты на сайте

1. С помощью команды  site:site.ua  можете проверить какие именно дубли попали в индекс поисковой машины.
2. Введите отрывки фраз с вашего сайте в поиск, таким образом обнаружите страницы на которых она присутствует
3. Инструменты для веб-мастеров Google, в разделе Вид в поиске → Оптимизация HTML, можете увидеть страницы, на которых есть повторяющееся метаописание или заголовки.
инструменты гугл мастер

 5 способов удалить дубликаты страниц

1. С помощью файла robots.txt
Пример
Disallow: /*?
Disallow: /index.php?*
Таким образом, дадим знать поисковой машине, что странички, которые содержат параметры  ?, index.php?,  не должны индексироваться.
Есть одно «но»:  файл robots — это только рекомендация для поисковых машин, а не правило, которому они абсолютно следуют. Если, например, на такую страничку поставлена ссылка то она попадет в индекс.
2.  Файл  .htaccess, позволяет решить проблему с дублями на уровне сервера.
.htaccess — это файл конфигурации сервера Apache, находится в корне сайта. Позволяет настраивать конфигурацию сервера для отдельно взятого сайта.
Склеить странички сайта 301 редиректом.
Пример
Redirect 301 /home.html http://site.ua/  (для статических страниц cайта)
RewriteCond %{QUERY_STRING} ^id=45454
RewriteRule ^index.php$ http://site.ua/news.html? [L,R=301]   (редирект для динамических страничек)
Использовать 410 редирект (полное удаление дубля)
Он сообщает что такой странички нет на сервере.
Пример
Redirect 410 /tag/video.html
Настроить домен с www и без www
Пример с www
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^site\.ua
RewriteRule ^(.*)$ http://www.site.ua/$1 [R=permanent,L]
Без www
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site.ua$ [NC]
RewriteRule ^(.*)$ http://site.ua/$1 [R=301,L]
Добавляем слеш в конце URL
RewriteCond %{REQUEST_URI} (.*/[^/.]+)($|\?) RewriteRule .* %1/ [R=301,L]
Для сайтов с большим количеством страниц будет довольно трудозатратно искать и склеивать дубли.
3. Инструменты для веб-мастеров
Функция Параметры URL позволяют запретить Google сканировать странички сайта с определенными параметрами
Удаление дубликатов в панеле вебмастеров Гугл
Уничтожить дубли страниц через панель вебмастеров
Или вручную удалить
удаление дубликатов в панеле
Удаление страничек возможно только в случае если страничка:
— запрещена для индексации в файле robots.txt
— возвращает ответ сервера 404
— запрещена тегом noindex
4. Мета тег noindex — это самый действенный способ удаления дубликатов. Удаляет навсегда и бесповоротно.
По заявлению Google наличие тега noindex полностью исключает страничку из индекса.
Пример
<meta name=»robots» content=»noindex»>
Важно. Для того что бы робот смог удалить страничку, он должен ее проиндексировать, то есть она не должна быть закрыта от индексации в файле robots.txt.
Реализовать  можно через регулярные выражения PHP, используя функцию preg_match().
5. Атрибут rel=»canonical»
Атрибут rel=»canonical»  дает возможность указать рекомендуемую (каноническую) страничку для индексации поисковыми машинами, таким образом дубликаты не попадают в индекс.
rel=»canonical» указывается двома способами
1.  С помощью атрибута link в в HTTP-заголовке
Пример
Link: <http://site.ua/do/white>; rel=»canonical»
2. В раздел <head> добавить rel=»canonical» для неканонических версий страниц
Пример
<link rel=»canonical» href=»http://site.ua/product.php?book»/>
В некоторые популярные CMS атрибут rel=»canonical» внедрен автоматически — например, Joomla! 3.0 (почитайте об отличии версии Joomla! 2.5 и Joomla! 3.0). У других CMS есть специальные дополнения.
Подведем итог. При разработке сайта учитывайте возможности появления дублей и заранее определяйте способы борьбы с ними. Создавайте правильную структуру сайта (подробнее здесь).
Проверяйте периодически количество страниц в индексе, и используйте возможности панели  Инструментов для веб-мастеров.
При написании использовались материалы

0 коммент.:

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