Поиск:

Ответ в темуСоздание новой темы Создание опроса
> RewriteRule не хочет работать, черт его знает 
:(
    Опции темы
eee
Дата 1.8.2008, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 14.4.2008
Где: ХарьковCity

Репутация: 1
Всего: 1



есть такие правила
Код

RewriteRule ^education/auto_school/category_a/ index.php?p=auto_school_cat&cname=category_a&cat=1 [QSA,L]
RewriteRule ^education/auto_school/category_a/([0-9]+) index.php?p=auto_school_cat&cname=category_a&cat=1&cpage=$1 [QSA,L]
RewriteRule ^education/auto_school/category_a/(.*).html index.php?p=auto_school_card&cname=category_a&cat=1&school_name=$1 [QSA,L]

RewriteRule ^education/auto_school/category_b/ index.php?p=auto_school_cat&cname=category_b&cat=2 [QSA,L]
RewriteRule ^education/auto_school/category_b/([0-9]+) index.php?p=auto_school_cat&cname=category_b&cat=2&cpage=$1 [QSA,L]
RewriteRule ^education/auto_school/category_b/(.*).html index.php?p=auto_school_card&cname=category_b&cat=2&school_name=$1 [QSA,L]

RewriteRule ^education/auto_school/category_c/ index.php?p=auto_school_cat&cname=category_c&cat=3 [QSA,L]
RewriteRule ^education/auto_school/category_c/([0-9]+) index.php?p=auto_school_cat&cname=category_c&cat=3&cpage=$1 [QSA,L]
RewriteRule ^education/auto_school/category_c/(.*).html index.php?p=auto_school_card&cname=category_c&cat=3&school_name=$1 [QSA,L]

RewriteRule ^education/auto_school/category_d/ index.php?p=auto_school_cat&cname=category_d&cat=4 [QSA,L]
RewriteRule ^education/auto_school/category_d/([0-9]+) index.php?p=auto_school_cat&cname=category_d&cat=4&cpage=$1 [QSA,L]
RewriteRule ^education/auto_school/category_d/(.*).html index.php?p=auto_school_card&cname=category_d&cat=4&school_name=$1 [QSA,L]

RewriteRule ^education/auto_school/category_e/ index.php?p=auto_school_cat&cname=category_e&cat=5 [QSA,L]
RewriteRule ^education/auto_school/category_e/([0-9]+) index.php?p=auto_school_cat&cname=category_e&cat=5&cpage=$1 [QSA,L]
RewriteRule ^education/auto_school/category_e/(.*).html index.php?p=auto_school_card&cname=category_e&cat=5&school_name=$1 [QSA,L]

RewriteRule ^education/auto_school/driving_trade/ index.php?p=auto_school_cat&cname=driving_trade&cat=6 [QSA,L]
RewriteRule ^education/auto_school/driving_trade/([0-9]+) index.php?p=auto_school_cat&cname=driving_trade&cat=6&cpage=$1 [QSA,L]
RewriteRule ^education/auto_school/driving_trade/(.*).html index.php?p=auto_school_card&cname=driving_trade&cat=6&school_name=$1 [QSA,L]

RewriteRule ^education/auto_school/ index.php?p=auto_school

проблема в том, что правило  ^education/auto_school/ и все правила категорий ^education/auto_school/category_a/ и т.д. все нормально работают, а вот правила для пейджера ^education/auto_school/category_a/([0-9]+) и для карточки школы ^education/auto_school/category_a/(.*).html не хотят - перекидует на страницу категории ^education/auto_school/category_a/ и все(
все файлы на сервере есть и если переходить не по чпу, а обычному урлу, то все хорошо работает.

пс. сам в реврацте разбираюсь не очень, знаю как написать правило, подставить значение, а вот что такое [QSA,L] - даже не знаю, приписал, потому что там в .htaccess все правила заканчивались этим модификатором.

помогите, пожалуйста, срочно нужно.
PM MAIL WWW ICQ   Вверх
skyboy
Дата 1.8.2008, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 4
Всего: 260



модификатор L значит, что если адрес удовлетворяет правилу, то дальше проверка не идет.
вот твой адрес education/auto_school/category_a/какое_то_число  при проходе сверху вниз сначала удовлетворяет более общему правилу 
Цитата

^education/auto_school/category_a/

и до проверки правилами 
Цитата

RewriteRule ^education/auto_school/category_a/([0-9]+) index.php?p=auto_school_cat&cname=category_a&cat=1&cpage=$1 [QSA,L]
RewriteRule ^education/auto_school/category_a/(.*).html index.php?p=auto_school_card&cname=category_a&cat=1&school_name=$1 [QSA,L]

благополучно не доходит. и зачем? правило-то подходящее уже нашли?
если подумать логически, то самым простым решением будет переставить правила так, чтоб более специализированные шли вначале. 
а самым корректным решением - подкорректировать правило 
Цитата

^education/auto_school/category_a/

чтоб оно совпадало только с адресом "education/auto_school/category_a/" вот таким образом:
Код

^education/auto_school/category_a/$

однако поправлю: лучше учесть то, что адрес без последнего слеша тоже должен что-то вернуть. тогда окончательный вариант будет таким:
Код

^education/auto_school/category_a/?$


PM MAIL   Вверх
eee
Дата 1.8.2008, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 14.4.2008
Где: ХарьковCity

Репутация: 1
Всего: 1



огромное спасибо) ты просто меня спас! будет 100 постов дам плюс;)
PM MAIL WWW ICQ   Вверх
skyboy
Дата 1.8.2008, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 4
Всего: 260



спасибо, мне и так нормально живется smile
а вот тебе без логики может сложно прийтись. воспитывай  smile 
И вопрос пометь решенным.
PM MAIL   Вверх
Mal Hack
Дата 1.8.2008, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



Эм... А почему бы не сделать проще:
Код
RewriteRule ^education/(.+?)/(.*?)/(.*?)$ index.php?p=auto_school_cat&cname=$2&cat=1&cpage=$3 [QSA,L]
RewriteRule ^education/(.+?)/(.*?)/(.*?)\.html$ index.php?p=auto_school_card&cname=%2&cat=1&school_name=$3 [QSA,L]


Вообще, так, на глаз скрипт очень плохо спроектирован...
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема »


 




[ Время генерации скрипта: 0.0615 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.