Torsten Förtsch wrote: > Hi, > > I know one can specify the handler invocation order of the request phases. But > how to do it? > > My problem is, I want to know if a request came in over http or https in the > fixup phase. With mp1 I had configured by the LoadModule order that a > mod_perl handler was called after the mod_ssl handler. Since mod_ssl sets up > subprocess_env in the fixup phase I could check subprocess_env('HTTPS') in a > mod_perl fixup handler. > > How can I define that my mod_perl fixup handler is to be called after the > mod_ssl fixup handler?
the only way to do this currently is to alter the mod_perl source. after running 'perl Makefile.PL' open modperl_hooks.c and look for this line: ap_hook_fixup(modperl_fixup_handler, NULL, NULL, APR_HOOK_REALLY_FIRST); to get mod_perl to run after mod_ssl, change APR_HOOK_REALLY_FIRST to APR_HOOK_LAST (since mod_ssl runs fixups as APR_HOOK_MIDDLE). I started working on a way to dynamically alter module order at config time, just like you used to do with LoadModule or ClearModuleList/AddModule, but unfortunately I haven't had the time to follow up on it. understand, however, that this isn't a mod_perl specific thing - apache 2.0 has removed the ability for users to specify the order that modules will run, pending a core change (which is what I was working on :) > > Or how can I access the SSL related stuff from mod_perl prior to the response > phase? it doesn't look like you can, at least from my glancing over the source. --Geoff -- Report problems: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html