Зачем нужен 301 редирект?
К примеру, у нас была страница про менеджер паролей Keepass с таким адресом — /post/12509/ и мы решили сделать ЧПУ. То есть, теперь адрес страницы должен быть такой - /keepass-manаger/, этот адрес неизвестен поисковым системам, соответственно все, кто приходит из поиска будут попадать на старый адрес а не на новый. Но страницы со старым адресом уже не существует, значит посетители будут попадать на 404 страницу. То есть, у нас на сайте появится битая ссылка. И чтобы такого не происходило, нужно правильно сделать 301 редирект. Тогда пользователи из поиска будут перенаправляться со старого адреса на новый.
Как же сделать 301 редирект?
Итак, начнем с того, что вы должны познакомиться с файлом .htaccess. Именно в этот файл мы будем прописывать редиректы. Этот файл должен находиться в корневой директории вашего сайта, там же где находится файл index.php. Если у вас нет этого файла, значит вам нужно его создать вручную. обратите внимание на точку в имени файла - .htaccess. Имя должно быть точно таким же, включая точку.
После того как вы создали файл, можно делать 301 редирект, достаточно просто прописать следующую конструкцию.
RedirectPermanent 301 old_url new_url
- RedirectPermanent 301 — инструкции редиректа
- где old_url — старый адрес страницы
- new_url — новый адрес страницы
Рассмотрим пример редиректа на моем сайте по программированию. У нас есть следующая целевая страница - http://cppstudio.com/dlya-nachinayushhix/rekomendovannaya-literatura/ — это старый адрес, с этого адреса нужно сделать переадресацию на новый адрес - /cat/299/. Новый адрес хотя и не похож на ЧПУ, но, зато, он более короткий и легко запоминается. Я открываю файл .htaccess и в конец добавляю следующую строку:
RedirectPermanent 301 /dlya-nachinayushhix/rekomendovannaya-literatura/ /cat/299/
Как видите, я указал ключевое слово RedirectPermanent, указал номер статуса, потом указал старый адрес и, через пробел, — новый. Чтобы проверить, работает редирект или — нет, пройдите по следующим адресам:
- http://cppstudio.com/dlya-nachinayushhix/rekomendovannaya-literatura/ — старый адрес страницы
- http://cppstudio.com/cat/299/ — новый адрес страницы
Эти два адреса ведут на одну и туже страницу и адрес у этой страницы — /cat/299/. Со старого адреса выполняется 301 редирект на новый адрес. Теперь вы имеете наглядное представление того, как работает 301 редирект.
Также, обратите внимание на то, что в строке редиректа я указал относительные адреса, то есть можно было бы написать так:
RedirectPermanent 301 http://cppstudio.com/dlya-nachinayushhix/rekomendovannaya-literatura/ http://cppstudio.com/cat/299/
В этом случае 301 редирект то же бы хорошо работал, но если вы делаете редирект в пределах своего доменного имени, то его можно опускать, так запись короче получается.
Другие директивы редиректа 301
Для 301 редиректа, также можно использовать директиву Redirect, она абсолютно аналогична директиве RedirectPermanent. Отличие состоит в том, что RedirectPermanent была разработана позже, в отличие от директивы Redirect. Директива RedirectMatch используется для настройки переадресации с помощью регулярных выражений.
Также, важным моментом является то, что при 301 редиректе, весь вес страницы перетекает со старого на новый адрес. Поэтому не стоит беспокоиться о том, что статический вес со старой страницы куда-то исчезнет.
PHP 301 редирект
<?php header("HTTP/1.1 301 Moved Permanently"); // отправляем заголовок состояния (в нашем случае - это редирект 301) header("Location: /post/12803/"); // редирект на другую страницу блога exit(); ?>
Как видите из примера, 301 редирект в php выполняется достаточно легко, просто скопируйте этот кусок кода и укажите свой адрес страницы. А теперь давайте протестируем php-редирект:
Обратите внимание на адрес ссылки, вот он /wp-content/scripts/php_redirect.php. По этому адресу мы обращаемся к php-скрипту, в котором прописан редирект на страницу с фидбернером.
На этом я решил закончить данный пост, думаю, новичкам будет достаточно информации по 301 редиректу. Во всяком случае, для своего проекты вы уже сможете сделать 301 редирект самостоятельно.
4 Комментариев
-
301-й редирект — весьма востребованный инструмент, необходимый в типовых ситуациях, связанных с переносом домена, переадресацией и т.п., а также незаменимый в плане СЕО оптимизации, когда нужно скрыть дубли страниц, чтобы домен был с www или наоборот — без.
-
Желаю вам победы в конкурсе на лучший блог у Борисова!!! Призы действительно замечательные!
-
Thanks for sharing your thoughts on сделать.
Regards -
I have learn a few excellent stuff here. Certainly worth bookmarking for
revisiting. I surprise how a lot effort you set to make such a great informative
site.