You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2004/06/15 16:27:19 UTC
DO NOT REPLY [Bug 29576] New: -
Content negotitation (MultiViews) occurs before mod_rewrite leading to odd results
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=29576>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=29576
Content negotitation (MultiViews) occurs before mod_rewrite leading to odd results
Summary: Content negotitation (MultiViews) occurs before
mod_rewrite leading to odd results
Product: Apache httpd-2.0
Version: 2.0.49
Platform: PC
OS/Version: Linux
Status: NEW
Severity: Normal
Priority: Other
Component: mod_negotiation
AssignedTo: bugs@httpd.apache.org
ReportedBy: lukeross@sys3175.co.uk
If a directory has both MultiViews (possibly inherited from a parent) and
RewriteRules, the MultiView lookup is done before the Rewrite. This can result
in odd errors.
To demonstrate:
1. Create two directories and enable Multiviews in both of them
2. Create a file in each, with the same stem but different extensions (say,
A.html and A.shtml).
3. Verify you can access them as /dir1/A and /dir2/A
4. Now put in a RewriteRule on dir1 that redirects requests to dir2.
5. Get a 404 Not found error for "/dir2/A.html" when accessing /dir1/A
Here the sequence of events is:
/dir1/A -> /dir1/A.html (MultiView)
/dir1/A.html -> /dir2/A.html (Rewrite)
/dir2/A.html not found
I believe it should be:
/dir1/A -> /dir2/A (Rewrite)
/dir2/A -> /dir2/A.shtml
/dir2/A.shtml found
---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org