On Mar 11, 2015, at 9:59 AM, David E. Wheeler <da...@justatheory.com> wrote:
> # Set the filename. > > my $file = File::Spec->catfile($sub_root, substr $r->uri, 1); > $r->filename($file); > $r->finfo(APR::Finfo::stat($file, APR::Const::FINFO_NORM, $r->pool)); > return DECLINED; > } > > I have no PerlReponseHandler, so Apache handles the response…and returns 404. > Note that a request for /hi.txt; it’s only a request in a subdirectory, > /foo/bar.html, that fails. Why? Why isn’t Apache able to find that file? Is > there some other attribute of $r I need to set or unset? Turns out I was able to fix this issue by unsetting path_info. I just added $r->path_info(undef); To the above code, and now Apache can find the file. I do not understand the relationship between filename (which is often not the full path to a file) and path_info. Fortunately, it looks like I don’t have to. But we might want to consider updating the docs to recommend unsetting path_info when setting the full path to a file in filename. Best, David
smime.p7s
Description: S/MIME cryptographic signature