Bug 46743

Summary: Inconsistent behavior of "RewriteOptions inherit" in htaccess file
Product: Apache httpd-2 Reporter: Matt McCutchen <matt>
Component: mod_rewriteAssignee: Apache HTTPD Bugs Mailing List <bugs>
Status: RESOLVED LATER    
Severity: normal Keywords: MassUpdate
Priority: P2    
Version: 2.2.11   
Target Milestone: ---   
Hardware: PC   
OS: Linux   

Description Matt McCutchen 2009-02-19 21:19:56 UTC
Originally posted at:
http://marc.info/?l=apache-httpd-users&m=123343931109341&w=2

The behavior of "RewriteOptions inherit" in a subdirectory's htaccess file differs in two places from what I would expect.  The documentation does not address these issues, but I would argue that my expectations are more reasonable than the current behavior because they are consistent with the behavior if the subdirectory has no mod_rewrite configuration at all.

1. Inherited rules are interpreted with respect to the subdirectory (meaning that the subdirectory's per-dir prefix is stripped and RewriteBase is added).  I would expect each rule to always be interpreted with respect to the directory that defined it, so that the meaning of a "^" anchor in a rule pattern is consistent.  (The original post includes a demonstration.)

2. If a directory is requested without a trailing slash, rewriting is completely skipped.  It makes sense to skip the directory's own rules to avoid bug 20195, but I think inherited rules should still run.  Otherwise, there's no way to rewrite the request short of moving the entire mod_rewrite configuration to the parent htaccess file.
Comment 1 William A. Rowe Jr. 2018-11-07 21:10:00 UTC
Please help us to refine our list of open and current defects; this is a mass update of old and inactive Bugzilla reports which reflect user error, already resolved defects, and still-existing defects in httpd.

As repeatedly announced, the Apache HTTP Server Project has discontinued all development and patch review of the 2.2.x series of releases. The final release 2.2.34 was published in July 2017, and no further evaluation of bug reports or security risks will be considered or published for 2.2.x releases. All reports older than 2.4.x have been updated to status RESOLVED/LATER; no further action is expected unless the report still applies to a current version of httpd.

If your report represented a question or confusion about how to use an httpd feature, an unexpected server behavior, problems building or installing httpd, or working with an external component (a third party module, browser etc.) we ask you to start by bringing your question to the User Support and Discussion mailing list, see [https://httpd.apache.org/lists.html#http-users] for details. Include a link to this Bugzilla report for completeness with your question.

If your report was clearly a defect in httpd or a feature request, we ask that you retest using a modern httpd release (2.4.33 or later) released in the past year. If it can be reproduced, please reopen this bug and change the Version field above to the httpd version you have reconfirmed with.

Your help in identifying defects or enhancements still applicable to the current httpd server software release is greatly appreciated.