I know this is a simple problem, but I can't find the solution in the Eagle books or in the mailing lists, etc. Anyway. I have a custom blocking module to block large quantities of URLs <Files *.cgi> Options +execcgi </Files> <Files *.shtml> AddHandler server-parsed .shtml SetHandler server-parsed AddType text/html .shtml Options +Includes #makes my module return DECLINED everywhere: PerlSetVar Block off </Files> <Location /> SetHandler perl-script PerlAccessHandler Apache::Block PerlSetVar Block_Config /home/httpd/config.file PerlSetVar Block_Direction allow PerlSetVar Block_OnNoRef allow PerlSetVar Block_MIMEType text/html ErrorDocument 403 http://www.littlebreast.com/halt.html </Location> <Perl> push @INC, ["/home/httpd/config.file"]; </Perl> <Location /cgi-bin/> SetHandler cgi-script PerlSetVar Block off </Location> ---------- We want the PerlAccessHandler to be the blocking software, but the content handler to be mod_include. Currently I'm looking into Apache::SSI as we speak, but I'd rather just have a quick C solution than the morethanlikely slower apache::ssi module (this is a heavily loaded site). I've included the SetHandler for the cgi scripts above because we had a similar problem with those, and by using sethandler we were able to get them probably executed. I am aware that this is a scoping problem with SetHandler of some sort. Is there anything I can do to run mod_include as the content handler and use the Apache::Block module (my custom one) as the access handler without the two interfering like this? Thanks greatly in advance, Rob