vpath and vhosts together
Jeremy James
jbj at forbidden.co.uk
Fri Feb 15 14:10:59 UTC 2008
Aaron Trevena wrote:
> On 15/02/2008, Jeremy James <jbj at forbidden.co.uk> wrote:
>> Aaron Trevena wrote:
>> > We've got perlbal running on one of our webservers instead of apache
>> > and now I'm working through the rest, but have a little problem..
>> >
>> > one webserver has 2 instances of the backend mod_perl - one live and
>> > one staging, with only 1 ip address for the server I need to use both
>> > vpath and vhost plugin, but they don't appear to work together - the
>> > code for vpath pretty much explicitly states that would be the case.
>> >
>> > So has anybody managed to combine vhost and vpath ?
>>
>> I did a quick patch a while back to support this - see first patch from
>> http://lists.danga.com/pipermail/perlbal/2007-April/000436.html
>
> Just to confirm - in order to use vhosts and vpaths, I'd daisychain
> the selectors with the vpaths in the 2nd layer selector after applying
> the first patch ?
Yup. See totally untested imaginary example configuration below. It
might contain fewer errors than my previous attempts at posting
configuration examples...
Best wishes,
Jeremy
=== perlbal-chained.conf ===
# This needs chained-selectors patch to Service.pm
LOAD vhost
LOAD vpath
# Imaginary internal test server doing its own path handling
CREATE POOL test_backends
POOL test_backends ADD 192.168.1.42
CREATE SERVICE testproxy
SET role = reverse_proxy
SET pool = test_backends
SET persist_backend = off
SET verify_backend = off
ENABLED testproxy
# End of internal test server
# Main production system, seperating images from remote apache handling
CREATE POOL main_backends
POOL main_backends ADD 192.168.1.50
POOL main_backends ADD 192.168.1.51
POOL main_backends ADD 192.168.1.52
CREATE SERVICE mainproxy
SET role = reverse_proxy
SET pool = main_backends
SET persist_backend = on
SET verify_backend = on
ENABLED mainproxy
CREATE SERVICE localimages
SET role = web_server
SET docroot = /var/imageroot/
SET dirindexing = off
ENABLE localimages
CREATE SERVICE mainselect
SET role = selector
SET plugins = vpath
VPATH /images/.* = localimages
VPATH .* = mainproxy
ENABLE mainselect
# End of Main production system
# Main listener, using vhost plugin
CREATE SERVICE main
SET listen = 0.0.0.0:80
SET role = selector
SET plugins = vhost
VHOST test.example.com = testproxy
VHOST * = mainselect
ENABLE main
=== End of perlbal-chained.conf ===
More information about the perlbal
mailing list