|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Kirill Khilko 2:450/166.19 28 Mar 2002 11:53:12 To : All Subject : mod_rewrite -------------------------------------------------------------------------------- я понимаю, что здесь это оффтопик, но больше обратиться некуда. если знаете -- можете смело поставить мне плюс и указать направление в другую эху. есть три вопроса по сабжу... 1. почему вот на такое правило: RewriteRule ^text/([0-9])/$ text/0$1/01/ RewriteRule ^(.*)/$ /info/index.php?page=$1 [L] RewriteRule ^(/*)$ /info/index.php?page= [L] и запрос урла http://localhost/info/text/7/ происходит вот это (кусок из лога): add path-info postfix: d:/www/info/text -> d:/www/info/text/7/ strip per-dir prefix: d:/www/info/text/7/ -> text/7/ applying pattern '^text/([0-9])/$' to uri 'text/7/' rewrite text/7/ -> text/07/01/ add per-dir prefix: text/07/01/ -> d:/www/info/text/07/01/ add per-dir prefix: d:/www/info/text/07/01/ -> d:/www/info/d:/www/info/text/07/01/ add path-info postfix: d:/www/info/d:/www/info/text/07/01/ -> d:/www/info/d:/www/info/text/07/01//7/ strip per-dir prefix: d:/www/info/d:/www/info/text/07/01//7/ -> d:/www/info/text/07/01//7/ applying pattern '^(.*)/$' to uri 'd:/www/info/text/07/01//7/' rewrite d:/www/info/text/07/01//7/ -> /info/index.php?page=d:/www/info/text/07/01//7 и выводится, соответственно, "d:/www/info/text/07/01//7", а нужно чтобы на входе скрипта было "text/07/01/" то есть конкретно меня напрягает то, что оно делает add per-dir prefix и add path-info postfix -- как этого избежать, я так и не понял... 2. как сделать, что бы, например, для этого правила: RewriteRule ^(.*/)$ /info/index.php?page=$1 [L] RewriteRule ^(/*)$ /info/index.php?page= [L] не нужно было каждый раз писать /info/ или /test/ и т.п.? 3. если я делаю правило, дописывающее / для псевдо-каталогов (типа /about/, /contact/, etc), то под это правило попадает ВСЕ, что не заканчивается слэшем, включая то, что совсем не должно обрабатываться (index.php, images/*.*, etc) RewriteRule ^(.*)[^/]$ /info/index.php?page=$1/ [L] как быть в этом случае? надо ли писать правила, транслирующие обычные файлы (index.php, images/*.*, etc) в себя же с опцией [L]? До встреч... Минск, 28 Мар 2002, 10:48 --- GoldED+/W32 1.1.4.7 * Origin: [ http://www.tm-vitim.org/ ] (2:450/166.19) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/33833ca2da06.html, оценка из 5, голосов 10
|