301 редирект на php – как сделать

Наша статья о 301 редиректе с помощью .htaccess взорвала интернет и собрала уже более полумиллиона просмотров. htaccess – один из самых удобных, но единственных способов перенаправить страницу. Если у вас сайт на php, то вы можете воспользоваться данной инструкцией.

Если у вас самописный сайт, который состоит из набора .php страниц, то для переадресации со старого URL на новый, вам нужно добавить в самый верх файл кусок кода с редиректом на нужную страницу.

Редирект страницы

header("HTTP/1.1 301 Moved Permanently");
header("Location: https://domain.ru/test.html");
exit();

Если редиректов на php нужно поставить много, то есть смысл составить отдельный файл, который будет содержать в себе все правила, например redirect.php.

if($_SERVER['REQUEST_URI'] == '/old-url-1/'){
    header("HTTP/1.1 301 Moved Permanently");
    header("Location: https://domain.ru/new-url-1/");
    exit();
}
if($_SERVER['REQUEST_URI'] == '/old-url-2/'){
    header("HTTP/1.1 301 Moved Permanently");
    header("Location: https://domain.ru/new-url-2/");
    exit();
}

Таких правил можно написать сколько угодно, организовать условия синтаксически – тоже можно по-разному. Далее такой файл подключается к вашему сайту.

Редирект каждой страницы на такую же страницу другого домена

$ref=$_SERVER["QUERY_STRING"];
if ($ref!="") $ref="?".$ref;
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://domen.ru/".$ref);
exit();

Проверка редиректа

Проверить переадресацию как для браузера, так и для робота:

Полезные материалы:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (1 оценок, среднее: 5,00 из 5)
Загрузка...
logo