如何使用.htaccess将文本转换为小写URL

时间:2011-04-21 05:39:43

标签: regex apache .htaccess mod-rewrite

我想在.htaccess文件中设置301重定向,以便像

这样的网址
http://example.com/Foo

http://example.com/Foo/Bar

http://example.com/Foo/Bar/Blah

更改为

http://example.com/products/foo

http://example.com/products/foo/bar

http://example.com/products/foo/bar/blah

有一些离散数量的“Foo”案例,我可以用RewriteRule ^ Foo来定位,但是如何附加“产品”部分?

1 个答案:

答案 0 :(得分:1)

首先在httpd.conf文件末尾的<VirtualHost>部分 OR 中添加此行:

RewriteMap lc int:tolower

然后在.htaccess文件中有这些规则:

RewriteEngine on
Options +FollowSymlinks -MultiViews  
RewriteRule ^(Foo.*)$ /products/${lc:$1} [R=301,L]
  • R = 301,用于将301发送回浏览器
  • L用于标记最后一条规则