我今天正在调试一个与混合mod_proxy
和mod_rewrite
一起相关的问题,我最终不得不使用balancer://mycluster
inRewriteRule
以停止从 Apache 接收 404 错误。我有两个问题:
1)有没有其他方法可以让重写的 URL 通过平衡器而不添加balancer://mycluster
到RewriteRule
?
2) 有没有办法在 or 中定义我在ProxyPass
(stickysession=JSESSIONID|jsessionid scolonpathdelim=On lbmethod=bytraffic nofailover=Off) 中定义的所有参数<Proxy>
?RewriteRule
我担心与新请求匹配的请求不会以与通过的请求RewriteRule
相同的方式进行负载平衡ProxyPass
(例如/app1/something.do
)?
以下是 httpd.conf 的相关部分。我正在使用 Apache 2.2。
<Proxy balancer://mycluster>
Order deny,allow
Allow from all
BalancerMember ajp://my.domain.com:8009 route=node1
BalancerMember ajp://my.domain.com:8009 route=node2
</Proxy>
ProxyPass /app1 balancer://mycluster/app1 stickysession=JSESSIONID|jsessionid scolonpathdelim=On lbmethod=bytraffic nofailover=Off
ProxyPassReverse /app1 ajp://my.domain.com:8009/app1
...
RewriteRule ^/static/cms/image/(.*)\.(.*) balancer://mycluster/app1/$1.$2 [P,L]