From: Rich Bowen
It is therefore important, if you are using RewriteRule directives in one of these
-context that you take explicit steps to avoid rules looping, and not
+contexts, that you take explicit steps to avoid rules looping, and not
count solely on the [L] flag to terminate execution of a series of
rules, as shown below.
The example given here will rewrite any request to
index.php, giving the original request as a query string
-argument to index.php, however, if the request is already
-for index.php, this rule will be skipped.
index.php, however, the RewriteCond ensures that if the request
+is already for index.php, the RewriteRule will be skipped.
RewriteCond %{REQUEST_URI} !index\.php
@@ -214,7 +214,9 @@ RewriteRule (.*)A(.*) $1B$2 [N]
You can think of this as a while loop: While this
-pattern still matches, perform this substitution.
A), perform this substitution (i.e., replace the
+A with a B).
diff --git a/docs/manual/rewrite/rewrite_flags.xml b/docs/manual/rewrite/rewrite_flags.xml
index 9befdede1be..d7a63667c31 100644
--- a/docs/manual/rewrite/rewrite_flags.xml
+++ b/docs/manual/rewrite/rewrite_flags.xml
@@ -192,14 +192,16 @@ start over.
It is therefore important, if you are using
The example given here will rewrite any request to
index.php, giving the original request as a query string
-argument to index.php, however, if the request is already
-for index.php, this rule will be skipped.
index.php, however, the index.php, the You can think of this as a while loop: While this
-pattern still matches, perform this substitution.
A), perform this substitution (i.e., replace the
+A with a B).