Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: mod_rewrite + символ /
 
 автор: Wyfinger   (13.09.2007 в 10:08)   письмо автору
 
 

Добрый день.

Есть каталог, индекс каталога передается скрипту в виде id записи в таблице, у этой записи может быть верхний уровень, т.е. это дерево:

id|parent|name
1|0|root
2|1|cat1
3|2|cat2
4|2|cat3

в корне лежит каталог root, в нем cat1, а в нем cat2 и cat3.

Я хочу сделать, чтобы ссылки были вида www.site.ru/root/cat1/cat2/, как это сделать?

Понятно что нужно передать управление скрипту, который проверит возможен ли указанный путь и если да - отдаст управление основному скрипту с индексом конечного каталога.
Выражение вида:
RewriteRule ^(.*)$ driver.php?s=$1 [L]

дает в результате только driver.php

Выражение вида:
RewriteRule ^(.*)/$ driver.php?s=$1 [L]

работает вцелом не плохо, но только если запрос завершается символом /, а хотелось бы чтобы он был необязателен, как при обычных каталогах.

   
 
 автор: Wyfinger   (13.09.2007 в 11:10)   письмо автору
 
   для: Wyfinger   (13.09.2007 в 10:08)
 

Отвечу на свой же вопрос - я использовал выражение:
RewriteRule ^([^\.]*)$ driver.php?s=$1 [L]

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования