Идея перенаправления PHP 301 - PullRequest
       0

Идея перенаправления PHP 301

0 голосов
/ 16 декабря 2009

Я опубликовал это раньше

301 Перенаправление статического HTML на динамическую страницу PHP

Но есть новая идея, и мне интересно, есть ли какие-то проблемы, почему я НЕ должен это делать ...

Если кто-то пытается перейти на мертвую страницу на нашем сайте, например:

(домен) /somepage.html

Что сейчас существует здесь:

(домен) /dynamic.php?id=1

Не удается и переходит на пользовательскую страницу ошибки 404 (/404.php)

Если я посмотрю на переменную $_SERVER['REDIRECT_URL'], я пойму, куда они пытались пойти. Моя идея состоит в том, чтобы добавить включение в верхней части страницы 404.php, чтобы проверить это значение, и если оно в моем списке элементов для перенаправления, то использовать PHP для выполнения 301.

Как то так ...

// -- php include at top of 404.php page

switch(trim($_SERVER['REDIRECT_URL'])){
   case "/oldpage.html" : $location = "/dynamic.php?id=1"; break;
   case "/oldpage2.html" : $location = "/dynamic.php?id=2"; break;  
}

if(isset($location) && trim($location) != ''){
   header ('HTTP/1.1 301 Moved Permanently');
   header ('Location: '.$location);
   exit(0);
}

// -- end of php include

Это дает мне единую точку для ввода во все ссылки, которые я вижу в инструментах Google для веб-мастеров, которые есть в записях блога и т. Д., Которые сейчас не работают.

Спасибо

1 Ответ

1 голос
/ 16 декабря 2009

Ну да. 301, сопровождаемый заголовком Location, является правильным ответом на запрос, который можно идентифицировать как перемещаемый.

...