将apache环境变量转换为小写

时间:2013-08-27 20:22:34

标签: apache

我有一个环境变量(从HTTP标头设置),可以是大写或小写。

SetEnvIfNoCase Accept-Language "^([a-z][a-z])(-[a-z][a-z])*" LANGUAGE=$1 COUNTRY=$2

如何在apache中将COUNTRY变量转换为小写。

1 个答案:

答案 0 :(得分:1)

您可以尝试使用内置的rewrite map函数“tolower”。您必须在服务器或vhost配置中定义它:

RewriteMap lc int:tolower

然后您可以在重写规则中使用${lc:}

RewriteRule ^ - [E=LANGUAGE:${lc:%{ENV:LANGUAGE}},E=COUNTRY:${lc:%{ENV:COUNTRY}},L]

# (Or just the "COUNTRY")
RewriteRule ^ - [E=COUNTRY:${lc:%{ENV:COUNTRY}},L]

规则本身可能位于htaccess文件中。