Как сделать редирек со старых страниц на ЧПУ?

Статус
В этой теме нельзя размещать новые ответы.

madara17

Новичок
Ребят, нужна помощь. Я сделал ЧПУ и теперь мне надо, чтобы был переход со старых url на ЧПУ. Например с worldmagik.ru/view_postart.php?id=257 на worldmagik.ru/article/257/1
 

keltanas

marty cats
PHP:
$map = array(
    '/index.php?option=com_content&view=article&id=75&Itemid=15' => '/contacts',
    '/index.php?option=com_content&view=article&id=58&Itemid=15' => '/about',
    '/index.php?option=com_content&view=article&id=4&Itemid=5' => '/nice-hru',
    '/index.php?option=com_content&view=article&id=5&Itemid=6' => '/nice-hru/very',
);
if (isset($map[$_SERVER['REQUEST_URI']])) {
    header('Status: 301');
    header(sprintf('Location: %s', $map[$_SERVER['REQUEST_URI']]));
    exit();}
if (preg_match('/^\/index/', $_SERVER['REQUEST_URI'])) {
    header('Status: 301');
    header('Location: /');
    exit();
}
Что-то типа того
 

madara17

Новичок
Это совсем не то. Я попробовал сделать так:

RewriteRule ^view_postart.php?id=$ http://www.worldmagik.ru/article/$/1 [L,R=301]

И меня при нажатии http://www.worldmagik.ru/view_postart.php?id=250 перекидывает на http://www.worldmagik.ru/article/?/1

Вместо 250 может стоять любое число. Мне с динамического url нужен переброс на динамический.

Вместо ? должна стоять цифра.

А Вы такое написали, что ничего не понять и надо прописывать для каждого url

Жду помощи от знающих людей.
 

artoodetoo

великий и ужасный
madara17, перевожу: "знающие люди" уже показали как это сделать. а писать код за тебя неинтересно.
 

madara17

Новичок
А через modrewtitte можно как-нибудь. Я думаю готовое решение есть. А тот код не срабатывает.
 

AnrDaemon

Продвинутый новичок
Ну так выясните, почему не срабатывает.
keltanas, в Location: должны быть полный адрес с протоколом.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху