Я пытаюсь настроить обратный прокси-сервер Apache, чтобы запросы передавались другому приложению, работающему на 8080. Однако я хочу, чтобы некоторые каталоги обслуживались напрямую, а не перенаправлялись на прокси. Я хочу:
http: // localhost / -> http: // локальный: 8080 / myapp
http: // localhost / images -> / var / www / html / images
http: // localhost / что-нибудь еще -> http: // localhost: 8080 / myapp / что-нибудь еще
Мой текущий httpd.conf
ProxyRequests Off
ProxyTimeout 600
ProxyPreserveHost On
ProxyPass / http:// localhost:8080/
ProxyPassReverse / http:// localhost:8080/
RewriteEngine On
RewriteRule ^/(.*) http:// localhost:8080/VirtualHostBase/http/%{SERVER_NAME}:80/myapp/VirtualHostRoot/$1 [L,P]
Какую конфигурацию мне нужно сделать, чтобы исключение локального пути работало?
Спасибо, Таня
Я нашел решение.
Чтобы исключить / myapp, мне нужно добавить
ProxyPass /myapp !
как первая директива ProxyPass, поскольку исключения должны предшествовать общему правилу.
Мне также нужно добавить
RewriteCond !^/myapp/(.*)
перед RewriteRule, чтобы исключить его из RewriteRule