Avatar of skij
skijFlag for Canada

asked on 

.htaccess mod_rewrite: page name gets repeated multiple times

I use the following code in my .htaccess file to redirect  uppercase letters to lowercase letters in directory names:
RewriteEngine On

RewriteRule ^/?[^\/]*[A-Z] - [E=HASCAPS:TRUE,S=1]
RewriteRule !^/?[^\/]*[A-Z] - [S=28]
RewriteRule ^(/?[^\/A]*)A(.*)$ $1a$2
RewriteRule ^(/?[^\/B]*)B(.*)$ $1b$2
RewriteRule ^(/?[^\/C]*)C(.*)$ $1c$2
RewriteRule ^(/?[^\/D]*)D(.*)$ $1d$2
RewriteRule ^(/?[^\/E]*)E(.*)$ $1e$2
RewriteRule ^(/?[^\/F]*)F(.*)$ $1f$2
RewriteRule ^(/?[^\/G]*)G(.*)$ $1g$2
RewriteRule ^(/?[^\/H]*)H(.*)$ $1h$2
RewriteRule ^(/?[^\/I]*)I(.*)$ $1i$2
RewriteRule ^(/?[^\/J]*)J(.*)$ $1j$2
RewriteRule ^(/?[^\/K]*)K(.*)$ $1k$2
RewriteRule ^(/?[^\/L]*)L(.*)$ $1l$2
RewriteRule ^(/?[^\/M]*)M(.*)$ $1m$2
RewriteRule ^(/?[^\/N]*)N(.*)$ $1n$2
RewriteRule ^(/?[^\/O]*)O(.*)$ $1o$2
RewriteRule ^(/?[^\/P]*)P(.*)$ $1p$2
RewriteRule ^(/?[^\/Q]*)Q(.*)$ $1q$2
RewriteRule ^(/?[^\/R]*)R(.*)$ $1r$2
RewriteRule ^(/?[^\/S]*)S(.*)$ $1s$2
RewriteRule ^(/?[^\/T]*)T(.*)$ $1t$2
RewriteRule ^(/?[^\/U]*)U(.*)$ $1u$2
RewriteRule ^(/?[^\/V]*)V(.*)$ $1v$2
RewriteRule ^(/?[^\/W]*)W(.*)$ $1w$2
RewriteRule ^(/?[^\/X]*)X(.*)$ $1x$2
RewriteRule ^(/?[^\/Y]*)Y(.*)$ $1y$2
RewriteRule ^(/?[^\/Z]*)Z(.*)$ $1z$2
RewriteRule ^/?[^\/]*[A-Z] - [N]
RewriteCond %{ENV:HASCAPS} TRUE
RewriteRule ^/?(.*) /$1 [R=307,L]

Open in new window

The problem is that the page name gets repeated.

/HeLLO/WoRlD.html
gets redirected as:
/hello/WoRlD.html/WoRlD.html/WoRlD.html/WoRlD.html
Apache Web Server

Avatar of undefined
Last Comment
skij
ASKER CERTIFIED SOLUTION
Avatar of Dave Baldwin
Dave Baldwin
Flag of United States of America image

Blurred text
THIS SOLUTION IS ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
Avatar of skij
skij
Flag of Canada image

ASKER

The site uses a shared hosting provider and does not have access to mod_speling or to RewriteMap.

I need this to work purely as a mod_rewrite solution.
Apache Web Server
Apache Web Server

The Apache HTTP Server is a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards. Typically Apache is run on a Unix-like operating system, but it is available for a wide variety of operating systems, including Linux, Novell NetWare, Mac OS-X and Windows. Released under the Apache License, Apache is open-source software.

21K
Questions
--
Followers
--
Top Experts
Get a personalized solution from industry experts
Ask the experts
Read over 600 more reviews

TRUSTED BY

IBM logoIntel logoMicrosoft logoUbisoft logoSAP logo
Qualcomm logoCitrix Systems logoWorkday logoErnst & Young logo
High performer badgeUsers love us badge
LinkedIn logoFacebook logoX logoInstagram logoTikTok logoYouTube logo