Редиректы и их использование Обновлено: 18/05/2018

Настроить 301 редирект со страниц с WWW на страницы без WWW.

Правило:

RewriteCond %{HTTP_HOST} ^denginadom.org$ [NC]
RewriteRule ^(.*)$ http://www.denginadom.org/$1 [R=301,L]
_-_-_-_
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.ru
RewriteRule (.*) http://www.example.ru/$1 [R=301,L]
И наоборот, кому надо редирект домена с WWW на домен без WWW:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.ru$ [NC]
RewriteRule ^(.*)$ http://example.ru/$1 [R=301,L]

_____________________________________________________________

301 редирект с index (.html и .php) на корень сайта “/”
Возможно Вы даже и не обращали внимание, что Ваша главная страница может быть доступна по двум адресам: site/ и site/index.html (или .php). С точки зрения поисковой оптимизации это можно назвать дублем, хотя я уверен, что поисковые системы умеют обрабатывать такие ситуация. Однако я придерживаюсь к мнению, что даже такие очевидные мелочи должны быть исправлены.
Решается эта проблема с помощью редиректа на корень сайта “/”. Для создания редиректа, отройте .htaccess (он находится в корне Вашего сайта, доступ к нему можно получить через ftp).
Вставьте после:
RewriteEngine On
Следующие две строчки:
#в случае index.php:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://site/ [R=301,L]

#в случае index.html:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://site/ [R=301,L]
Если Ваш сайт сделан на какой-то CMS, то есть вероятность того, что у неё есть функция редиректа с корня на файл index. В этом случае откройте index.php, который находится в корне Вашего движка и пропишите:
if($_SERVER[‘REQUEST_URI’] == “/index.php”) {
header(“Location: /”,TRUE,301);
exit();
}

Добавить комментарий