我希望像 server.com/foo 这样的 URL 不区分大小写。
但 server.com/foo 实际上将 mod_rewrite'd 到 server.com/somedir/foo
(假设“somedir”中的所有文件都是小写的。)
所以问题是,如何完成如下所示的 mod_rewrite:
RewriteRule ^([^/]+)/?$ somedir/convert_to_lowercase($1)
PS:这是一个方便的 mod_rewrite 备忘单 --http://dreev.es/modrewrite http://dreev.es/modrewrite——尽管它无法回答这个特定问题。
PP:感谢Bee https://stackoverflow.com/users/58164/bee
and
Ignacio https://stackoverflow.com/users/20862/ignacio-vazquez-abrams感谢所有对此的帮助。
另外,这是一个相关问题:RewriteMap 激活 https://stackoverflow.com/questions/703709/rewritemap-activation
首先,将以下行放入<VirtualHost>
.conf 文件的部分。
(对于住在/etc/httpd/vhosts.d/00foo.conf
.)
RewriteMap lc int:tolower
您可以更换lc
任何你想要的名字。
然后重新启动apache,你可以这样做sudo service httpd restart
.
最后,将其添加到您的 .htaccess 文件中:
RewriteRule ^/(.*)$ /${lc:$1}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)