的httpd基于HTTP标头直接

问题描述:

我有一些现有的配置根据URL路径上的流量重定向到不同的服务,如果没有路径相匹配默认为“主”负载均衡服务的httpd基于HTTP标头直接

<Proxy balancer://main> 

     BalancerMember http://main-service01:8080 
     BalancerMember http://main-service02:8080 
</Proxy> 

ProxyPreserveHost on 

ProxyPassMatch "/server.txt" ! 

ProxyPassMatch "^/register/(.*)$" http://register_service/$1 
ProxyPassMatch "^/login/(.*)$" http://login_service/$1 
ProxyPassMatch "^/lookup/(.*)$" http://lookup_service/$1 


ProxyPassMatch ".*" balancer://main-service nofailover=Off maxattempts=3 timeout=5 

该作品! 现在我希望扩展功能,所以如果请求包含HTTP头环境= dev,则在路径不匹配其他条件之一的情况下,请求应直接指向dev服务器而不是主服务器

我尝试添加这只是上面的“*”的情况下,但没有奏效

RewriteCond %{HTTP:environment} dev 
RewriteRule (.*) http://dev:8080/$1 [P] 

以上配置的工作,但你要记住打开RewriteEngine叙述上

RewriteEngine on