/ Zope / Apsis / Pound Mailing List / Archive / 2010 / 2010-03 / Clarify procedure for multiple host headers in pound.conf

[ << ] [ >> ]

[ ClientCert depth of verification levels / Chris ... ] [ Strange Issue with other HTTP methods / Madhan ... ]

Clarify procedure for multiple host headers in pound.conf
Keith <keith(at)scott-land.net>
2010-03-02 12:51:48 [ FULL ]
I've looked through the mailing lists and at Google but I need some help 
on my confirmation.

I've got some web servers that I am moving behind pound any they have 
about 300 virtual sites on each of them so I am keen to keep the pound 
configuration file as small as possible. The domain names aren't all 
similar so a suggestion that I've see a few time on various sites

HeadRequire "*.(www.)?(domain|domain2).com.*

isn't much use as there isn't a particular structure to our domains. My 
pound file currently has multiple copies of the following

Service
   HeadRequire "Host: .*site.our.org.*"
   BackEnd
     Address x.x.x.x,80,1
   End
End

Idealy I would like it to be something like the following

Service
   HeadRequire "Host: .*sitsde.org.*",
                         "Host: .*dokop.com.*",
                         "Host: .*sdihns.org.uk.*",
                         "Host: .*eiorwer.blah.*",
                         "Host: .*serwer.etc.*",
   BackEnd
     Address x.x.x.x,80,1
   End
End

Can anyone suggest how to include multiple Host headers as above or how 
to shorten the script it in any way, eventualy we will script the 
generation of the configuration file but untill then we will be editing 
it by hand and it's already getting pretty large.

Thanks
Keith

Re: [Pound Mailing List] Clarify procedure for multiple host headers in pound.conf
Dave Steinberg <dave(at)redterror.net>
2010-03-02 15:42:43 [ FULL ]
On 3/2/2010 6:51 AM, Keith wrote:[...]

HeadRequire "Host:[ \t]*(www\.)?(domain1\.com|domain2\.com|...)$"

Should do what you want, if not how you want.  The real question is, how 
do you map domains to backends?  Assuming its complicated, you may do 
well to use an IP per server group (whatever that is for your setup), 
and just use DNS to manage things.

If its simple, just map the exceptions as above, and use a service block 
w/o any HeadRequire directives to catch the rest.

Regards,[...]

MailBoxer