Как склеить index.php и index.html с корнем сайта и стоит ли делать это? Устраняем дубли страниц в Joomla.

Нет картинки Часто для SEO продвижения необходимо устранить лишние дубли страниц, склеить дубли главной страницы.

Часто ссылки в меню на главную страницу идут в следующем виде: http://www.site.ru/index.html. Лучше склеить http://www.site.ru и http://www.site.ru/index.html, http://www.site.ru/index.php, так как для поисковика адреса вида http://www.site.ru и http://www.site.ru/index.html не равнозначны, и воспринимаются как две различные страницы. А так как контент на них один, следовательно происходит его дублирование.

 
Как произвести склейку дублей в Joomla CMS? Самое простое склеить через ридерект в файле .htaccess:
 
Для склейки /index.php на /:
# дубль с index.php на /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://yoursite.ru/$1 [R=301,L]
Для склейки /index.html на / добавляем одну строчку в .htaccess:
#  Включение mod_rewrite
RewriteEngine On
RewriteRule ^index.html$ / [R=301,L] #дубль с index.html на /
Options +Indexes
Options +FollowSymLinks
RewriteBase /
Чтобы проверить, что всё правильно склеилось, введите в браузер адрес дубля (http://site.ru/index.рhp), если всё ок, то вас перебросит на http://site.ru. Также будет переводить и поисковых ботов и они не будут видеть эти дубли.
 
А потом сообщить Яндексу - http://webmaster.yandex.ru/delurl.xml для удаления из индекса.
 
P.S. Для сайта на Yii проще такую склейку сделать в корневом файле index.php, добавив в самый верх:
if($_SERVER['REQUEST_URI'] == "/index.php" || $_SERVER['REQUEST_URI'] == "/site" || $_SERVER['REQUEST_URI'] == "/site/index") {
header("Location: /",TRUE,301);
exit();
} 
 
Источник: loco.ru

almix
Разработчик Loco, автор статей по веб-разработке на Yii, CodeIgniter, MODx и прочих инструментах. Создатель Team Sense.

Вы можете почитать все статьи от almix'а.



Другие статьи по этой теме:

Комментарии (0)     Подпишитесь на RSS комментариев к этой статье.