.htaccess& 301:使用大写字母将URL重定向到相同的URL但是小写

时间:2011-06-29 09:14:07

标签: .htaccess url-rewriting http-status-code-301 friendly-url

1)我得到了mysite.com/about-me.php。

当我输入mysite.com/About-me.php时,我收到404错误。

我想为我的.htaccess添加一些魔法,以便mysite.com/My-PaGe.php (etc) redirects the user by 301, OR rewrites the URL (whatever is the best?) to mysite.com/my-page.php.
- 是301还是改写最好的?

2)我可能会添加一个适用于所有网址的规则,还是我必须手动指定所有不同的网页?

奖金3)如果有人知道如何将mysite.com/mY-paGe.php重写为mysite.com/my-site那么额外奖励明星

非常感谢

1 个答案:

答案 0 :(得分:1)

这会执行301重定向,所有具有大写字母的网址都会被重写为小写字母:

RewriteMap lc int:tolower    
RewriteCond %{REQUEST_URI} [A-Z]
RewriteRule (.*) ${lc:$1} [R=301,L]

另见本文,特别是评论部分。 http://www.chrisabernethy.com/force-lower-case-urls-with-mod_rewrite/

可能需要在httpd.conf中指定此行,并在.htaccess中指定RewriteCond / RewriteRule

RewriteMap lc int:tolower