我试图设置一个Apache反向代理,以便请求被代理到8080上运行的另一个应用程序。但是,我想要一些目录直接服务,而不是转发到代理。 我想要的是:
http:// localhost / – > http:// localhost:8080 / myapp
http:// localhost / images – > / var / www / html / images
http:// localhost / anything-else – > http:// localhost:8080 / myapp / anyhthing-else
我目前的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]
我应该做什么configuration来使本地pathexception工作?
谢谢,Tania
我find了解决scheme。
为了排除/ myapp,我需要添加
ProxyPass /myapp !
因为排除的第一个ProxyPass指令应该在通用规则之前。
我也需要补充
RewriteCond !^/myapp/(.*)
在RewriteRule之前将其从RewriteRule中排除