ЗАРЕГИСТРИРУЙТЕСЬ
и получите бесплатно:
1.Чек-лист по созданию информационного сайта.
2.3 видеоурока с первыми шагами в сайтах.
3.10 лучших материалов из Базы Знаний.
или Регистрация
Восстановление пароля

Особенности реализации редиректа на PHP

Особенности реализации редиректа на PHP

301 редирект – принудительная переадресация посетителя с одного урл-адреса на другой. При этом оба адреса могут находиться как на одном домен, так и на разных.

Другими словами, посетитель вбивает в поиске браузера (или напрямую открывает ссылку) один урл-адрес, при этом автоматически попадает на другой. Процесс переадресации настолько быстрый, что пользователь ничего не замечает.

Как работает 301 редирект?

  1. Пользователь указывает URL адреса в строке браузера или кликает на ссылку.
  2. Сервер получает запрос с адресом и приступает к его обработке.
  3. Во время обработки запроса получает инструкцию редиректа и придерживается его правилам.
  4. В результате посетитель получает другой урл-адрес, который был прописан в инструкции 301 редиректа.

При этом правило 301 редиректа действует не только для посетителей, но и для поисковых ботов. Краулер Google или Яндекс тоже переходит на другой адрес, если настроена переадресация.

Какие задачи выполняет 301 redirect

Основная задача редиректа – перенаправить трафик на новый адрес (вместе с тем, передается и вес страницы). В каких случаях требуется такое мероприятие? Основные из них:

  • Изменился URL страницы, поэтому необходимо перенаправить посетителей на новый.
  • Сайт переехал на новый домен, поэтому появилась необходимость в настройке 301 редиректа.
  • Одна страница доступна под несколькими URL-адресами (дублирует себя).
  • При работе онлайн-сервисов, модулей, форум и других интерактивных элементов ресурса требуется настройка перенаправления.

Настроить 301 редирект можно только, если у вас есть доступ к сайту. Прописать переадресацию для любого адреса в сети, не получится. Поэтому редирект считается «официальным», так как его указывает сам владелец ресурса. Поисковые роботы лояльно относятся к таким действиям. Вот что об этом говорит Яндекс в Справке.

Как реализовать 301 redirect посредством PHP

Несмотря на то, что большинство вебмастеров предпочитают задавать правило переадресации через файл .htaccess, иногда возникает потребность реализации и через php. Способ это не менее простой. Достаточно прописать следующее содержимое на странице, с которой запланирована переадресация:

<?php
header(“HTTP/1.1 301 Moved Permanently”);
header(“Location: http://www.new-domain.ru/page.php”);
exit();
?>

Так, обращаясь к документу, посетитель будет автоматически перенаправлен на другую страницу. Но проследите, чтобы до вызова header ничего не выводилось, иначе настройка не сработает. Это касается «echo» или «print». Разместите команду вначале скрипта.

Существует и другое решение реализации редиректа 301 на php. Например, если сайт переехал на другой домен, но урл-адреса сохранились:

<?
$ref=$_SERVER['QUERY_STRING'];
if ($ref!='') $ref='?'.$ref;
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://new-domain.ru/'.$ref);
exit();
?>

При таком решении меняется только домен, а адрес страницы остается неизменным. Такой способ довольно простой в реализации, но имеет один серьезный недостаток – код нужно прописывать вручную в каждом документе, с которого требуется редирект.

Как проверить, сработал ли redirect

После того, как вы все настроили, нужно убедиться в работоспособности 301 редиректа. Для этого достаточно выполнить следующие шаги:

  1. Убедитесь, что сайт доступен. Загрузите главную страницу.
  2. Проверьте основные разделы и страницы на наличие ошибок.

Для комплексной оценки работы редиректов можете воспользоваться одним из сервисов:

Выводы

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

А каким способом вы настраиваете 301 редирект? Поделитесь опытом в комментариях.

Ещё вам может быть интересно:

Комментарии

?>