我试图让所有网址始终小写,当用户输入网址时,例如site.com/Personal将是site.com/personal ...我尝试了两种不同的方式,一种不起作用,另一种给出了500内部服务器错误。
500内部服务器错误
RewriteMap lowercase int:tolower
RewriteCond $1 [A-Z]
RewriteRule ^/(.*)$ /${lowercase:$1} [R=301,L]
不起作用
<IfModule mod_speling.c>
CheckCaseOnly On
</IfModule>
答案 0 :(得分:1)
您不能在.htaccess文件中使用RewriteMap。您只能在服务器配置或virtualhost配置文件中使用它。此外,如果您在.htaccess文件中编写RewriteRules,则会删除前导斜杠(前缀),因此您将永远不会匹配 ^ /(。*),因为从不存在前导斜杠。