I've this rewriterule:
RewriteRule ^authenticate /id/authenticate.php [NS,QSA]
I get this error:
[Sitting Jul 23 05:12:37 2011] [error] [client 184.108.40.206] Request exceeded the limit of 10 internal redirects because of probable configuration error. Use 'LimitInternalRecursion' to improve the limit if required. Use 'LogLevel debug' to obtain a backtrace., referer: https://2x.to/id/authenticate
I figured the NS flag should stop this from happening.
Isn't it working for whatever reason, did I not put it on correct or did I get me wrong its purpose?
Can there be a different way to get this to rewriterule "work" without renaming the file?
I modified the RewriteRule to:
RewriteRule ^authenticate$ /id/authenticate.php [QSA]
which works all right. However am still thinking about why NS didnt work.
You most likely want
[L] here, not
[NS] is particularly for controlling the rewrite in certain unusual situations where Apache can make an "internal" request to itself, like while processing server-side includes.
You may even desire to make the rule more specific -- based on where this rule is, it is possible that
^authenticate is matching
/id/authenticate.php. If that is the situation, you will need to add an early on rule which "carves out" the best for your file, such as this:
RewriteRule ^/id/authenticate\.php$ - [L]