Что прописать в htaccess для ЧПУ

avgaz

Участник
Регистрация
18 Окт 2006
Сообщения
189
Реакции
7
Делаю ЧПУ для столкнулся с такой проблемой
Имеется вот такое содержание в htaccess
Код:
RewriteRule ^([^.]+)/(.*).html(/?)+$ index.php?md=content&op=content_show&ide=$2 [L]
RewriteRule ^(.*).html(/?)+$ index.php?md=content&op=content_show&ide=$1 [L]
RewriteRule ^([^.]+)/?$ index.php?md=content&op=show_category&idc=$1 [L]

Собственно эти правила открываю урлы контента к примеру по таким адреса test.ru/test.html или test.ru/test1/ и так же test.ru/test1/test.html и тд в общем это все работает как нужно, но вот столкнулся с такой проблемой что реальные директории которые присутвуют на сервере тоже обрабатывается этими правилами к примеру физически на существует директория test2 на если её открыть test.ru/test2/ то она обрабатывается правилом и уже не открывается. Как избежать этого, что бы существующие директории не обрабатывались правилами?
 
Код:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
 
Код:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
Не срабатывает, если вводить имя файла например test.ru/test2/index.php то открывает его, а если вводить test.ru/test2/ то срабатывают правила из первого поста
 
Вы добавили это условие для всех правил ? хотя наверное в Вашем случае лучше будет наоборот и добавить только одно правило

Код:
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
 
Назад
Сверху