301 редирект (301 Permanent Redirect) – серверное перенаправление при смене адреса сайта или страницы. Этот ответ сервера позволяет автоматически перенаправить пользователя на новый адрес. Поисковые системы при 301-редиректе понимают, что произошла смена URL и в скором времени производят склейку старых и новых адресов.
Настройка 301 редиректа
1.Через php-условие
В этом случае сервером определяется перенаправление и браузер получает команду открыть новый адрес вместо старого. Указать php-редирект можно в корневом файле index.php
Вариант 1:<?php header(“HTTP/1.1 301 Moved Permanently”); header(“Location: http://new-domain.com/index-new.php”); exit(); ?>Вариант 2:
<?php if($_SERVER['REQUEST_URI'] == "/index-old.php") { header("Location: /index-new.php",TRUE,301); exit(); } ?>
2.Через конфигурационный файл .htaccess
.htaccess — это конфигурационный файл веб-сервера Apache, позволяющий управлять работой веб-сервера и настройками отдельного сайта без изменения основного конфигурационного файла веб-сервера.
1. Переадресация старой страницы на новую:
Redirect 301 /old.php http://www.mediasova.com/new.php
2. Переадресация старого сайта на новый
Вариант 1:Redirect 301 / http://new.mediasova.com/Вариант 2:
RewriteCond %{HTTP_HOST} ^old.mediasova.com [NC] RewriteRule ^(.*) http://new.mediasova.com/$1 [L,R=301]
3. Переадресация с www на без www и наоборот
Переадресация с www.mediasova.com на mediasova.comRewriteCond %{HTTP_HOST} ^www.mediasova.com$ [NC] RewriteRule ^(.*)$ http://mediasova.com/$1 [R=301,L]Переадресация с mediasova.com на www.mediasova.com
RewriteCond %{HTTP_HOST} ^mediasova.com [NC] RewriteRule ^(.*) http://www.mediasova.com/$1 [L,R=301]
4. Редирект с http на https
Вариант 1:RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]Вариант 2:
RewriteCond %{HTTP:X-HTTPS} !1 RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
5. Редирект с https на http
RewriteCond %{HTTPS} =on RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
6. Переадресация со всех несуществующих поддоменов на Ваш сайт
RewriteCond %{HTTP_HOST} ^(.*).mediasova.com [NC] RewriteRule ^(.*)$ http://mediasova.com/$1 [L,R=permanent]
Дополнительно о файле .htaccess:
- Некоторые настройки, например редирект с http на https или с www на без www, можно делать через настройку хостинга в панели клиента, не внося правки в файл .htaccess
- Приведенные выше правила настройки для 301-редиректа лучше размещать все правила после двух строк, если они есть в Вашем файле .htaccess:
Options +FollowSymLinks RewriteEngine On
- Комментарий в файле обозначается символом решётка «#» в начале строки:
# Текстовый комментарий, данная строчка не будет обрабатываться
- Методы редиректа с использованием .htaccess работают только на серверах c операционной системой Linux, с установленным сервером Apache с включенным модулем Mod-Rewrite.
- Использование .htaccess создает дополнительную нагрузку на сервер Apache. Более эффективно прописывать те же команды в конфигурационном файле hpptd.conf, но обычно к нему нет доступа у вебмастера.
Совет SEO-специалиста: 301 редирект – хороший метод сохранения позиций и результатов продвижения сайта в поисковых система при переезде сайта на новый адрес. Корректная настройка 301-редиректа в файле .htaccess также позволяет избежать появления дублей страниц.