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();
Проверка редиректа
Проверить переадресацию как для браузера, так и для робота:
- Простой, удобный и функциональный – https://www.bertal.ru/
- В Яндекс.Вебмастере: https://webmaster.yandex.ru/tools/server-response/

Полезные материалы:
- 301 редирект на htaccess – 17 примеров
- SEO оптимизация сайта своими руками – проверь себя
- Операторы расширенного поиска для Google, Yandex и Bing


