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

我想在我的.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

我可以使用RewriteRule ^ Foo定位不同数量的“ Foo”用例,但是如何附加“ products”部分?

最佳答案
首先,在< VirtualHost>中添加此行部分,或位于httpd.conf文件末尾:

RewriteMap lc int:tolower

然后在.htaccess文件中包含以下规则:

RewriteEngine on
Options +FollowSymlinks -MultiViews  
RewriteRule ^(Foo.*)$/products/${lc:$1} [R=301,L]

> R = 301,用于将301发送回浏览器
> L表示最后一条规则

转载注明原文:regex-如何使用.htaccess将文本转换为小写URL - 代码日志