[prev in list] [next in list] [prev in thread] [next in thread] 

List:       apache-httpd-users
Subject:    Re: [users@httpd] Handler Chain (based on request method)
From:       Aaron Dalton <aaron () daltons ! ca>
Date:       2009-10-28 17:07:36
Message-ID: 4AE87A58.5070401 () daltons ! ca
[Download RAW message or body]

 > Interesting issue.
 > Several things come to mind, roughly :
 > 1) you may want to (also) post this question on the mod_perl list
 > (modperl@perl.apache.org)

Thank you for your response.  I will cross-post that right now.

 > 2) what happens if you just remove the section
 > >         <Limit GET>
 > >             Allow from All
 > >             SetHandler default-handler
 > >         </Limit>

Same problem.

 > 3) If nothing else works, you should be able to do this using 
mod_rewrite :
 > a) define a new <Location /fs-dispatch> with your perl module in it
 > b) use RewriteCond and RewriteRule to check for a "non-GET" call, and if
 > so, re-direct (internally) to the /fsdispatch location

I'm always nervous when it comes to rewrite voodoo, but I'll review the 
docs and see what I can come up with.

 > 4) for your last question : I think that if your first handler returns
 > DECLINED, Apache will automatically pass the request to the next defined
 > handler in the chain.  The first handler returning "not-DECLINED" wins.
 > You could also create your "pre-dispatcher" as a PerlAccessHandler,
 > which will always be executed in a previous phase (before content
 > handlers).  That pre-dispatcher could just "push" the BackCAD::Dispatch
 > handler as a content-handler only if needed, leaving the default Apache
 > handler if it is a GET.


Thanks again for your response.  So you can just have multiple 
"SetHandler" directives?  And it will try from the top to the bottom? 
That seems like the most elegant solution.  I'll give it a shot.

Aaron

---------------------------------------------------------------------
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@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic