PDA

Просмотр полной версии : Перевод сайта на mod_rewrite


Mirovan
13.12.2007, 23:19
Был написан простенький движок для сайта, тут встала необхаодимость перевести его на mod_rewrite. Как сделать так чтобы при обращении к страницам типа http://site.ru/index.php?id=1 редиректилось на http://site.ru/1 ???

P.S. пробовал играться с параметрами [R] , но чето одна рука не ищ того места :(

blackybr
14.12.2007, 01:33
юзаем поиск по форуму и находим мою статью))
https://forum.antichat.ru/thread27498.html

если по твоему сабжу -
RewriteEngine On
RewriteRule ^([0-9])$ index.php?id=$1

Mirovan
14.12.2007, 07:16
Это то всё понятно :)
ЧПУ я сделал.

Вопрос немного в другом:
Есть страница http://site.ru/index.php?id=1, страница http://site.ru/1 - тоже самое с помощью mod_rewrite.

Надо сделать так чтобы при заходе юзера на страницу http://site.ru/index.php?id=1 его редиректило на страницу http://site.ru/1.

Есть конечно выриант в самом файле index.php определять QUERY_STRING, но может есть способ сделать это с помощью mod_rewrite ?


P.S. проверку работы mod_rewrite использую на Денвере.

Хозяин
14.12.2007, 07:34
RewriteEngine On
RewriteBase /
RewriteRule ^([0-9])$ index.php?id=$1 /$ [R=301,L]


Ну или тупо пропиши в .htaccess

Redirect 301 /index.php?id=1 http://site.ru/1

S7iL3t
14.12.2007, 07:43
Тупо пропиши в .htaccess

Redirect 301 /index.php?id=1 http://site.ru/1
Имхо, у топикстартера страничка далеко не одна, а прописывать таким образом каждую страницу - нерационально.
Имхо все же лучше менять сам скрипт.

Хозяин
14.12.2007, 07:46
Поправил свой пост, на тот случай что страниц много