You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modules-dev@httpd.apache.org by Vasiliy Baranov <Va...@Sun.COM> on 2008/08/14 20:41:51 UTC
request_rec.filename alteration
Hi,
I am trying to write a module that internally translates
"/foo/bar/XXX/..." in document paths to "/foo/bar/YYY/...", where
"/foo/bar" is a constant and YYY is a function of "/foo/bar" contents on
disk _and_ authenticated user name. Since the translate_name phase
precedes check_user_id (authentication) phase, doing my translation in a
translate_name hook is out of question. On the other hand, when I am in
a fixups hook, I am able to alter request_rec.filename as needed, but
then someone, most likely core.c line 3631 (httpd 2.2.9), notices that
the original document (in "/foo/bar/XXX/...") does not exist, and issues
FILE_NOT_FOUND. What would be the right way to approach this? Doing this
stuff at the end of authentication phase? Internal redirects? I think I
can do an internal redirect from a fixups hook, however, it seems
somewhat difficult to construct a correct URI for passing to
ap_inernal_redirect() there - in my case "/foo/bar/XXX/..." itself may
be a result of one of many Aliases.
Thank you,
Vasiliy