Задать вопрос
@awenn2015
Веб-программист самоучка

Как добавить дополнительные условия в RewriteCond %{QUERY_STRING}?

Всем привет, задача была такая, всю строку перекинуть в get параметр что бы через мой загрузчик сайта правильно показывать страницы, на просторах рунета нашел такой код и он хорошо работает

RewriteCond %{QUERY_STRING} !path=
RewriteRule ^(.*)$ ?path=$1 [QSA,L]


Но у меня есть сервисные папки которые не должны попадать под это условие, пробовал что то смастерить но я плохо знаком с .htaccess поэтому первым делом попробовал просто добавить

RewriteCond %{QUERY_STRING} !path= && %{QUERY_STRING} !^client ...


но очевидно это не правильно, буду благодарен за помощь, сейчас у меня три сервисные папки которые не должны попадать под условие: server/ | loader/ | client/
  • Вопрос задан
  • 44 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@awenn2015 Автор вопроса
Веб-программист самоучка
Порывшись в своих проектах нашел эту строку:

RewriteCond %{REQUEST_FILENAME} !-f

Так как я немного почитал про .htaccess сразу смекнул что это то что нужно, не идеальное но рабочее решение и в итоге получилось это, может кому пригодится

RewriteCond %{QUERY_STRING} !path=
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ ?path=$1 [QSA,L]


Скорее всего можно было бы поиграть с регулярками и %{REQUEST_URI} сравнив его с нужными строками но да ладно, главное что бы работало
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы