Исключение RewriteRule в .htaccess

IB
На сайте с 23.04.2010
Offline
44
12252

Взываю о помощи.

Подскажите кто в курсе как обойти RewriteRule

имеется вот такой код :

RewriteRule ^(.*)/(.*)/(.*).html(/?)+$ index.php

получаетя если ссылка имеет три слеша будет редирект на index.php

у меня на сайте есть ссылки вида

site.ru/soft/system/bla-bla-bla.html

как добавить в исключения .htaccess

что бы он все что было бы с site.ru/soft/ .......

не редиректил, ну а все остальное естественно редиректилось

siv1987
На сайте с 02.04.2009
Offline
427
#1

RewriteRule ^soft/ - [L]

добавить перед правилом которые нужно обойти

IB
На сайте с 23.04.2010
Offline
44
#2
siv1987:
RewriteRule ^soft/ - [L]

добавить перед правилом которые нужно обойти

при этом

 
RewriteRule ^soft/ - [L]
RewriteRule ^(.*)/(.*)/(.*).html(/?)+$ index.php [L]

на сайте на всех адресах

site.ru/soft/

site.ru/soft/system/

site.ru/soft/system/bla-bla-bla.htm

ошибка 404 :(

*CMS DLE, ЧПУ Тип 2

siv1987
На сайте с 02.04.2009
Offline
427
#3
Inet_Boy:
на сайте на всех адресах
ошибка 404

При этом так и должно быть. Вы же хотели чтобы урл'ы с soft не реврайтились на index.php, естественно сервер вернет 404 если страницы по адресу не существуют или ссылки не участвуют не в каких преобразованиях.

Inet_Boy:
RewriteRule ^(.*)/(.*)/(.*).html(/?)+$ index.php
получаетя если ссылка имеет три слеша будет редирект на index.php

Не будет редиректа, а будет внутренним подзапросом отправляться на index.php, так что в адресной строке останется ссылка с тремя слэшами а реально запрос будет обрабатывать index.php

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