From 0beede09ac9a91954e91ce45ee74e616f217ae03 Mon Sep 17 00:00:00 2001 From: Eric Covener Date: Sun, 13 Nov 2011 16:55:55 +0000 Subject: [PATCH] clarify looping issue for PR52171. -This line, and those below, will be ignored-- M rewrite/tech.html.en M rewrite/tech.xml git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1201455 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/rewrite/tech.html.en | 12 +++++++----- docs/manual/rewrite/tech.xml | 12 +++++++----- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/docs/manual/rewrite/tech.html.en b/docs/manual/rewrite/tech.html.en index 007d6565b9..a3babf9984 100644 --- a/docs/manual/rewrite/tech.html.en +++ b/docs/manual/rewrite/tech.html.en @@ -69,11 +69,13 @@ and URL matching.

this, mod_rewrite temporarily translates the filename back into a URL, by stripping off directory path before appling the rules. (See the RewriteBase directive to - see how you can further manipulate how this is handled.) Then, a new - internal subrequest is issued with the new URL. This restarts - processing of the request phases. (Be careful to avoid rules that - can cause looping. See RewriteLooping - for further discussion of this problem.

+ see how you can further manipulate how this is handled.) If a substitution + is made, a new internal subrequest is issued with the new URL, which restarts + processing of the request phases. In this 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. + (See RewriteLooping + for further discussion of this problem.)

Because of this further manipulation of the URL in per-directory context, you'll need to take care to craft your rewrite rules diff --git a/docs/manual/rewrite/tech.xml b/docs/manual/rewrite/tech.xml index d30f8748a5..b341492143 100644 --- a/docs/manual/rewrite/tech.xml +++ b/docs/manual/rewrite/tech.xml @@ -79,11 +79,13 @@ and URL matching.

this, mod_rewrite temporarily translates the filename back into a URL, by stripping off directory path before appling the rules. (See the RewriteBase directive to - see how you can further manipulate how this is handled.) Then, a new - internal subrequest is issued with the new URL. This restarts - processing of the request phases. (Be careful to avoid rules that - can cause looping. See RewriteLooping - for further discussion of this problem.

+ see how you can further manipulate how this is handled.) If a substitution + is made, a new internal subrequest is issued with the new URL, which restarts + processing of the request phases. In this 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. + (See RewriteLooping + for further discussion of this problem.)

Because of this further manipulation of the URL in per-directory context, you'll need to take care to craft your rewrite rules -- 2.40.0