mod_rewrite преобразует урл но показывает 404

JD
На сайте с 13.12.2005
Offline
34
523

дано

http://site.com/papka1/index.php?ev...st&id=12345

надо

http://site.com/papka1/event/list/id/12345/

.htasses лежит в papka1

Options +FollowSymLinks

RewriteEngine on

RewriteRule ^event/([^/]+)/([^/]+)/?$/index.php?event=$1&id=$2 [L]

RewriteCond %{THE_REQUEST} \/index\.php\?event=([^&]+)&id=([^\ ]+)\ HTTP/

RewriteRule ^index\.php$ http://site.com/papka1/event/%1/%2? [R=301,L]

получаю

http://site.com/papka1/event/list/id/12345/

причем так пишет Файер Фокс експлоер пишет

http://site.com/papka1/index.php?ev...st&id=12345

но при обращении к такому адресу результат 404 , не найдено

взял с примера

http://apachedev.ru/2006/07/31/mod_...v-staticheskie/

в нем было

RewriteCond %{THE_REQUEST}^[A-Z]{3,9}

в начале строки все символы но не меньше 3 не больше 9 - немогу понять зачем это надо, с такой конструкцией правило у меня неработало.

В чем может быть проблемма?

Как сделать http://site.com/papka1/event/list/id/12345.html

и как перевести

http://site.com/papka1/index.php?ev...st&id=12345

в

http://site.com/papka1/event/list/i...мя_к_12345.html

спасибо

з.ы.мануал и ЧПУ читаю но полка ответа ненашол

S
На сайте с 25.12.2003
Offline
173
#1

Вы что, хотите не трогая ссылки внутри сайта сделать статику? Так не получится ничего, через внешние редиректы как-то вяло потом ссылки учитываются ...

Надо менять ссылки в меню на самом сайте, а потом по-простому сделать .htaccess и распарсить все в index.php парой строчек:

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule .* /index.php [L]

Красивые сниппеты Google ( https://saney.com/tools/google-snippets-generator.html )
JD
На сайте с 13.12.2005
Offline
34
#2

у меня около 5к страниц вида

http://site.com/papka1/index.php?event=list&id=12345

про файлы вида ХТМЛ пока забыли

почему 404 непонимаю

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