@bondle

Перенаправление всех запрос на папку кроме определенных?

Структура примерно:
/public
   file.html
   index.html
/scr
  scr.php
/somedir
index.html

Нужно перенаправлять все запросы в /public, кроме тех что делаются на scr, то есть
# В url
example.com/file.html
# На сервере подгружается 
/public/file.html
# В url
example.com
# На сервере подгружается 
/public/index.html

Но при обращении на scr
# В url
example.com/scr/scr.php
# На сервере подгружается 
/scr/scr.php


При этом нужно что бы в url public при перенаправлении не отображался
  • Вопрос задан
  • 297 просмотров
Решения вопроса 1
@bondle Автор вопроса
Я, который столкнется с тем же вопросом в будущем, лови
RewriteEngine On

RewriteCond %{REQUEST_URI} !^/scr
RewriteCond %{DOCUMENT_ROOT}/public/$1/ !-d [NC]
RewriteRule ^((?!public/).*?)/?$ public/$1 [L,NC]

RewriteCond %{REQUEST_URI} !^/scr
RewriteCond %{DOCUMENT_ROOT}/public/$1 -d [NC]
RewriteRule ^((?!public/).+?)/?$ public/$1/ [L,NC]

А если вы считаете, что это решение не верно, пожалуйста, подскажите в комментах или ответах верное
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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