On Fri, 14 Jun 2002, Geoffrey Young wrote:

> that's odd.  the above code essentially acts as though the user entered
> /not_ok_page.html in their browser all by themselves.  maybe I
> incorrectly assumed that's what you were looking for?
>
   well the problem with a onsite url is that the handler would have to
process that as well (unless i checked $r->uri for that specific uri. of
failure or DECLINED aspect works 100% perfect. its the non-DECLINE that
doesnt work

>
> Apache only gives handlers one shot at translating the URI to a
>
  does this mean 'apache only gives one and only one shot shot a
translating a url' or 'apache gives each handler one shot at translating a
url'? i assumed that after 'PerlTransHandler ModuleName' is done
mod_rewrite can still take a stab at the url.

>
> filename.  So, you can either trick apache by changing the URI and
> returning DECLINED, which lets Apache handle the translation for you,
> or map the filename yourself (as you do below) and return OK.
>

if I use this peice of code (solely as a way of trying to find the
problem) ...

sub handler {
  my $r=shift;
  $r->filename($r->document_root . $r->uri);
  return OK;
}

... i will get this for all requests

[date/time] [error] [client ip] File does not exist: /

> it's early here, and I haven't had my coffee yet, but what you're
> written should be essentially the same as the short snipped I provided
> (save the possibility of redirecting to an offsite URL).
>
  your part (the DECLINED) works perfecto ... thanks again

sub handler
{
    my $r=shift;

    if(sysdiag($r)) {
        ##
        ## somethng wrong here
        ##
        $r->filename($r->document_root . $r->uri);
        return OK;
    }  else {
        ##
        ## this works perfect
        ##
        $r->warn("Apache::Kosher($state)");
        my $url=$r->dir_config('KosherRedirect');
        $r->content_type('text/html');
        $r->header_out(Location=>$url);
        return REDIRECT;
    }
}

---
Gabriel C. Millerd |    Real Men don't make backups. They upload it via ftp
     Super Plumber |      and let the world mirror it. -- Linus Torvalds
                   |

Reply via email to