Как сделать 301 редирект для такого случая

Unlock
На сайте с 01.08.2004
Offline
786
1748

Есть грубо говоря каталог товаров, раньше структура была такая, что на одной странице содержалась общая информация о товаре, на другой подробная. Теперь решили объединить содержание. Вопрос как сделать 301 редирект если раньше были страницы виде showmodeltech&IDmodel=36 с подробной информацией и вида showmodelpage&IDmodel=36 с общей информацией. В данный момент вся информация находится на страницах вида showmodelpage&IDmodel=N (где N-порядковый номер). Не могу сообразить можно ли как то сделать 301 редирект страниц вида showmodeltech&IDmodel=N на showmodelpage&IDmodel=N при условии что N для каждого товара свое.

Есть желание, - тысяча способов; нет желания, - тысяча поводов! /Петр-I/.
I
На сайте с 22.10.2005
Offline
58
Iso
#1

Можно сделать, например, php скриптом, добавив в начало своего кода следующую проверку:


<?
if ($CURRENTPAGE=='showmodeltech' && $IDmodel) {
header('Location: http://вашсайт.ру/showmodelpage&IDmodel='.$IDModel);
exit();
}
?>

где $CURRENTPAGE - заранее приготовленное имя текущего состояния (чтобы только с 'showmodeltech' редиректить).

Это же можно сделать через .htaccess (mod_rwerite), но имхо так нагляднее.

Unlock
На сайте с 01.08.2004
Offline
786
#2

Iso, спасибо. Я сам не совсем понял как это работает, но программер поймет ;)

SS
На сайте с 03.09.2004
Offline
141
#3

Если будете использовать рhр'шный вариант, не забудьте третим параметром функции header отдать код 301 (как так Вы просите 301 в теме топика).

В случае использования Апачевской директивы Redirect[Match] не забудьте про код состояния permanent (301). Вообще, как вариант, можете использовать просто RedirectPermanent, что есть эквивалент Redirect permanent.

«Клянусь своей жизнью и любовью к ней, что никогда не буду жить ради другого человека и никогда не попрошу и не заставлю другого человека жить ради меня» (с) Джон Галт
Unlock
На сайте с 01.08.2004
Offline
786
#4

Seventh Son, а не могли бы написать код php'ного варианта с учетом того что Вы сказали? А также, если не сложно, апачевский вариант.

SS
На сайте с 03.09.2004
Offline
141
#5

На php должно выглядеть примерно так. Отдайте программисту, он разберется что к чему:

<?

if ($CURRENTPAGE=='showmodeltech' && $IDmodel) {

header('Location: http://вашсайт.ру/showmodelpage&IDmodel='.$IDModel, TRUE, 301);

exit();

}

?>

По поводу апача квалифицированно не скажу, так как я маркетолог, а не программист. Мы с товарищем недавно ковыряли настройки его сервера, оттуда и запомнил некоторые детали относительно серверных редиректов.

Upd: поспрошайте про апачевские настройки Алексея Полякова. Он хорошо шарит в вопросах настройки серверов, насколько я заметил.

Snake
На сайте с 18.06.2004
Offline
148
#6


<?
$rurl=$REQUEST_URI;
if(strstr($rurl,'showmodeltech')){
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://сайт.ру/showmodelpage&IDmodel=".$IDModel);
exit();
}
?>

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий