diff options
author | Eric Covener <covener@apache.org> | 2011-11-14 14:15:09 +0100 |
---|---|---|
committer | Eric Covener <covener@apache.org> | 2011-11-14 14:15:09 +0100 |
commit | a26722b0929aa0bf67f6d4177525554816781f6b (patch) | |
tree | 94cca8c68d8eede31084e89907e09e8aec6651ab /docs/manual/rewrite | |
parent | update transformation (diff) | |
download | apache2-a26722b0929aa0bf67f6d4177525554816781f6b.tar.xz apache2-a26722b0929aa0bf67f6d4177525554816781f6b.zip |
followups on PR52175
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1201690 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'docs/manual/rewrite')
-rw-r--r-- | docs/manual/rewrite/tech.html.en | 16 | ||||
-rw-r--r-- | docs/manual/rewrite/tech.xml | 17 |
2 files changed, 23 insertions, 10 deletions
diff --git a/docs/manual/rewrite/tech.html.en b/docs/manual/rewrite/tech.html.en index 0c829470a6..c4139bd20c 100644 --- a/docs/manual/rewrite/tech.html.en +++ b/docs/manual/rewrite/tech.html.en @@ -66,12 +66,18 @@ and URL matching.</p> <p>In per-directory context (i.e., within <code>.htaccess</code> files and <code>Directory</code> blocks), these rules are being applied after a URL has already been translated to a filename. Because of - this, mod_rewrite temporarily translates the filename back into a URL, - by stripping off the directory path (including a trailing slash) - before applying the rules. ) If a substitution is made, a new internal + this, the URL-path that mod_rewrite initially compares <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> directives against + is the full filesystem path to the translated filename with the current + directories path (including a trailing slash) removed from the front.</p> + + <p> To illustrate: If rules are in /var/www/foo/.htaccess and a request + for /foo/bar/baz is being processed, an expression like ^bar/baz$ would + match.</p> + + <p> If a substitution is made in per-directory context, a new internal subrequest is issued with the new URL, which restarts processing of the - request phases. If the substution is a relative path, the <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code> directive - determines the URL-path prefix appended to the substitution. + request phases. If the substitution is a relative path, the <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code> directive + determines the URL-path prefix prepended to the substitution. In per-directory context, care must be taken to create rules which will eventually (in some future "round" of per-directory rewrite processing) not perform a substitution to avoid looping. diff --git a/docs/manual/rewrite/tech.xml b/docs/manual/rewrite/tech.xml index e1d519aee8..2b0d315662 100644 --- a/docs/manual/rewrite/tech.xml +++ b/docs/manual/rewrite/tech.xml @@ -76,13 +76,20 @@ and URL matching.</p> <p>In per-directory context (i.e., within <code>.htaccess</code> files and <code>Directory</code> blocks), these rules are being applied after a URL has already been translated to a filename. Because of - this, mod_rewrite temporarily translates the filename back into a URL, - by stripping off the directory path (including a trailing slash) - before applying the rules. ) If a substitution is made, a new internal + this, the URL-path that mod_rewrite initially compares <directive + module="mod_rewrite">RewriteRule</directive> directives against + is the full filesystem path to the translated filename with the current + directories path (including a trailing slash) removed from the front.</p> + + <p> To illustrate: If rules are in /var/www/foo/.htaccess and a request + for /foo/bar/baz is being processed, an expression like ^bar/baz$ would + match.</p> + + <p> If a substitution is made in per-directory context, a new internal subrequest is issued with the new URL, which restarts processing of the - request phases. If the substution is a relative path, the <directive + request phases. If the substitution is a relative path, the <directive module="mod_rewrite">RewriteBase</directive> directive - determines the URL-path prefix appended to the substitution. + determines the URL-path prefix prepended to the substitution. In per-directory context, care must be taken to create rules which will eventually (in some future "round" of per-directory rewrite processing) not perform a substitution to avoid looping. |