I can set handlers directly from Apache config: <VirtualHost A> PerlResponseHandler code::A </VirtualHost A> <VirtualHost B> PerlResponseHandler code::B </VirtualHost B>
code A called only once and code B once too, only for specific Virtual Hosts. I need to make same config from my startup perl script, I want to read some own config data and then decide which handlers to add, which to not. Bit if I do: <VirtualHost A> <Perl> ... $s->push_handlers( PerlResponseHandler => 'code::A'); </Perl> </VirtualHost A> <VirtualHost B> <Perl> ... $s->push_handlers( PerlResponseHandler => 'code::B'); </Perl> </VirtualHost B> it presets PerlResponseHandler for code A and then code B in stack for all requests, not for specific virtual server. That means sub-level config's context doesn't taken into account in <Perl> sections at all or by push_handlers routine. Anyway, doesn't work. I want to set up own perl handlers, from perl script (i.e. through some push_handlers-like facility) but only for specific virtual hosts, not for all server, one handler per virtual server (code A / B), so one mine PerlResponseHandler will act only for virtual server A, another for B. I don't want to make additional dispatching in every handler to analyse, which virtual host at current request is. Is there's a way to make some fantasy-call like 'push handler per virtual host' from perl? (there is not, I learned API, maybe I missed some?) But... how to do that? AS one pre-idea I found in API was: <VirtualHost A> <Perl> ... $s->add_config(['PerlResponseHandler code::A']) </Perl> </VirtualHost A> <VirtualHost B> <Perl> ... $s->add_config(['PerlResponseHandler code::B']) </Perl> </VirtualHost B> but does $s->add_config works in current config context, or from Apache config's root as $s->push_handlers? and... intuitively I think it's not straight way. Through some strange backdoor, right? Maybe there's more fancy way? P.S. I don't want to enable global request, want to make more efficient / less memory code. -- creator, owner and maintainer of http://www.ladoshki.com and http://patent.km.ua my CV/about: http://patent.km.ua/eng/nugged?nc=lmp20 With respect, Andrew Nugged.