|
|
|
| Переделал движок сайта. Сейчас нужно сдалать так, чтобы при переходе по старой ссылке в каталог товаров, был редирект на товар в новом варианте.
Раньше ссылка была такого вида:
http://sulte.ru/catalog/index.php?id=123
|
Сейчас так:
http://sulte.ru/catalog-name-1/tovar-name-123
|
Как я думаю нужно сделать.
1. В .htaccess седалть мод реврайт со старого url на новый скрипт.
2. В скрипте, по id извлечь название товара и группу, и сделать редирект на новый URL.
Вопрос.
Как из PHP скрипта сделать редирект к кодом "301- Перемещено навсегда"?
Простой редирект длеаю так:
header("Location: $new_url");
exit;
|
Я так пологаю, нужно послать доп. заголовок с кодом 301.
Вопрос когда его послыать до строки header("Location: $new_url");, или после, или это не имеет значения?
И как конкретно этот заголовок должен выглядеть? | |
|
|
|
|
|
|
|
для: tAleks
(26.10.2011 в 10:52)
| | Погодите, а вы разве не при помощи mod_rewrite организовали ссылки вида?
http://sulte.ru/catalog-name-1/tovar-name-123
| Если да, то старые ссылки должны рабоать автоматически? Причем избавиться от них у вас не выйдет, так как в конце концов именно они являются рабочими. | |
|
|
|
|
|
|
|
для: cheops
(26.10.2011 в 11:50)
| | Да, это сделано при помощи мод_реврайта, но физический кактлог и название скрипта тоже изменено. Но это не главное.
Мне нужно сделать чтобы при переходе по старой ссылке, был редирект на новую, чтобы в адресной строке посетитель видел новый адрес. | |
|
|
|
|
|
|
|
для: tAleks
(26.10.2011 в 17:03)
| | перед переадресацией укажите:
header('HTTP/1.1 301 Moved Permanently');
|
только смотрите что бы бесконечный цикл переадресации не получился, для этого проверяйте ссылку сначала (например на наличие в ней index.php?id= ). | |
|
|
|