Помогите с регуляркой (.*).php$

Тема в разделе "Регулярные выражения", создана пользователем askarbin, 17 авг 2010.

Статус темы:
Закрыта.
Модераторы: xpert13
  1. askarbin

    askarbin

    Регистр.:
    31 мар 2009
    Сообщения:
    293
    Симпатии:
    36
    Подскажите, пожалуйста. Необходимо преобразовать урлы по такому формату:
    Делаю так:
    Код:
    RewriteRule ^part/([A-z0-9-]+).php$  part/deal.php?case=$1 [L] 
    В переменной case передается значение 'deal'.
    Делаю так:
    Код:
    RewriteRule ^part/([A-z0-9-]+)/([A-z0-9-]+).php$  part/deal.php?case=$1&vech=$2 [L]  
    В переменной case передается значение '([A-z0-9-]+)', в переменной vech - ([A-z0-9-]+), т.е. все ок.
    Что я делаю не так как надо? Заранее спасибо!
     
  2. Graph33

    Graph33 Создатель

    Регистр.:
    4 авг 2010
    Сообщения:
    34
    Симпатии:
    0
    а дайте пример урлов которые используются.
     
  3. askarbin

    askarbin

    Регистр.:
    31 мар 2009
    Сообщения:
    293
    Симпатии:
    36
    В первом случае:
    http://mysite.ru/part/buy.php
    Во втором случае:
    http://mysite.ru/part/chapter/buy.php
     
  4. McLay

    McLay Постоялец

    Регистр.:
    20 май 2008
    Сообщения:
    71
    Симпатии:
    15
    можно поставить самым первым правилом
    RewriteRule ^part/deal.php - [L]
     
    askarbin нравится это.
  5. askarbin

    askarbin

    Регистр.:
    31 мар 2009
    Сообщения:
    293
    Симпатии:
    36
    Решение хорошее, подошло.
    У меня возникла еще одна проблема:
    Есть редирект вида:
    Необходимо, чтобы при переходе по урлу:
    А при переходе по урлу:
    Как можно реализовать и что нужно добавить/изменить?
    Спасибо заранее
     
  6. McLay

    McLay Постоялец

    Регистр.:
    20 май 2008
    Сообщения:
    71
    Симпатии:
    15
    Код:
    RewriteRule ^part/city.php(/?)+$ part/index.php?city=city [L,QSA]
    
     
Статус темы:
Закрыта.