On 3/5/07, N.J. Thomas <njt@xxxxxxxxxx> wrote:
We have this working URL: http://example.org/BAR/ We would like to make the path portion of the URL case insensitive, so that the following: http://example.org/bar/ http://example.org/Bar/ http://example.org/bAr/ Would all go back to the original URL. Using mod_rewrite, I tried applying the following rule: RewriteRule ^/bar/$ /BAR/ [R=301,L,nocase] But that creates a redirect loop that the browser barfs on. The browser itself says this:
I sort of see why the loop is happening, but it is my understanding that the L flag would cause it to stop.
L flag is for internal rewriting. With an external redirect, each request looks completely new to apache. There are lots of ways to solve this. Here's one: RewriteCond %{REQUEST_URI} !^/BAR RewriteRule ^/bar/$ /BAR/ [R=301,L,nocase] The first line skips the rewrite if the case is already correct. --------------------------------------------------------------------- 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-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx