Re: reverse proxy based on user agent

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 03/24/2011 05:14 PM, Carlos del Castillo wrote:
Hello everyone, I have a web server that is load balancing two tomcat servers using the proxy module, all is working well but now I need to add a third one, but we need to send very specific user_agents to that third server. The URLs must be the same.

Right now my configuration looks like this:


ProxyRequests Off
ProxyVia Off
ProxyPreserveHost On

<Proxy *>
	Order deny,allow
	Allow from all
</Proxy>

<Proxy balancer://cluster>
	BalancerMember ajp://server1:8009 route=as1 loadfactor=50
	BalancerMember ajp://server2:8009 route=as2 loadfactor=50
</Proxy>


ProxyPass / balancer://cluster/ stickysession=JSESSIONID
ProxyPassReverse / balancer://cluster/

I've bee looking to the mod_rewirte module, but I'm not sure how I could add the third server and only send the specific user agents to that server.

This can be done fairly easily using a rewritecond:

RewriteCond %{HTTP_USER_AGENT} /some/matching/regex/
RewriteRule / ajp://server3:8009/ [P]

HOWEVER, this cannot be done inside the context of your balancer - unless you do all three this way.
So you lose the sessionID.

http://httpd.apache.org/docs/current/mod/mod_rewrite.html

--
J.


---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx
  "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx



[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux