2009/5/11 Roman Medina-Heigl Hernandez <ro...@rs-labs.com>:
> Bob Ionescu escribió:
>> 2009/3/2 Roman Medina-Heigl Hernandez <ro...@rs-labs.com>:
>>> The problem is that you cannot have %{REMOTE_USER} as 2nd parameters in
>>> RewriteCond, so I have no way for comparing it with $1
>>
>> -didn't read all-; but you can compare it with a regEx internal 
>> backreference.
>>
>> RewriteBase /stats
>> RewriteCond %{REMOTE_USER}<>$1 !^([^<]+)<>\1
>
> Could you explain that, please? I didn't know that syntax...

You're capturing a value with ^([^<]+), that is according to our test
string the value of %{REMOTE_USER} followed by the two characters <>
as a unique separator followed by the (previous) match of ([^<]+)
which matches against the value of $1.

E.g. if the remote_user is foo, the regEx will match against a test string of
foo<>foo

Just take a look at the manpage of PCRE, http://www.pcre.org/pcre.txt section
BACK REFERENCES
       Outside a character class, a backslash followed by a digit greater than

>> RewriteRule ^/clientes/(.*) /stats/%{REMOTE_USER}/stats/http/$1 [L]
>
> Why did you removed PT and used L?

PT has no special effect in per-directory context (rewrite rules used
inside <directory>/<location> containers, .htaccess files etc.). In
fact mod_rewrite will add passthrough: to the result of your
substitution, stop the processing of following rules in that set and
remove passthrough: later w/o doing sthg. special. L will only stop
the rewrite of the current set. I.e. the result is the same.

Bob

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscr...@httpd.apache.org
   "   from the digest: users-digest-unsubscr...@httpd.apache.org
For additional commands, e-mail: users-h...@httpd.apache.org

Reply via email to