Страница 1 из 1

Apache RewriteRule

Добавлено: 2013-08-08 17:29:26
kharkov_max
Добрый день.

Не могу понять как настроить RewriteRule.
Есть виртуалхост к примеру http://mysite.mydomain.com

Мне необходимо все что идет по этому URL перебросить в локалку на внутренний сервер, кроме URL содержащим http://mysite.mydomain.com/status/....
Т.е. если url содержит после 1го слеша или после доменного имени слово status, то этот URL и все что идет за status не проксировать а брать из локальной директории, прописано как Alias.

По отдельности работает, а вместе не могу связать

Пробовал так

Код: Выделить всё

        RewriteEngine On
        RewriteCond %{HTTPS} off
        RewriteCond %{REQUEST_URI} !^(.*)/(status)*$
        RewriteRule ^(.*)$ http://192.168.0.2/ [P,L]
Но все равно для status срабатывает переадресация в локалку.

Re: Apache RewriteRule

Добавлено: 2013-08-11 11:27:17
kharkov_max
Кто нить может помочь?
Или я задачу не понятно описал ?

Re: Apache RewriteRule

Добавлено: 2013-08-11 11:55:29
kharkov_max
Вообщем как говорится "Все гениальное просто".

Через RewriteRule у меня изголиться не получилось (видимо плохо доку читал или карма не позволила).
Но нашел для данного случая определенно простое решение.

Проброс на локальный сервер я делаю через ProxyPass,
Т.е

Код: Выделить всё

ProxyPass /   http://192.168.0.1/
Но если добавить исключение

Код: Выделить всё

ProxyPass /stats  !
ProxyPass /   http://192.168.0.1/
То все кроме /stats завернется на внутренний сервер а /stats будет работать локально на Web сервере, ну а далее <Dirrectory> и т.д.

Возможно подобное кому нить пригодится ...
Тему можно закрывать ...

Re: Apache RewriteRule

Добавлено: 2013-08-19 0:09:21
Alex Keda
а реврайт-то на первый взгляд нормальный...
--
реврайты дебажить можно - в конфиг апача прописывается куда лог писать.
не для продакшена тока - растёт со страшной силой, но понятьч то нетак ему - можно