Apache中如何检测查询字符串不存在并设置响应头
Apache配置:检测无查询字符串时设置响应头
正确实现方式
以下两种配置均可实现需求:
方式一:使用-z操作符检测空字符串
<If "-z %{QUERY_STRING}"> Header always set Cache-Control "max-age=120" </If>
方式二:直接比较查询字符串为空
<If "%{QUERY_STRING} == ''"> Header always set Cache-Control "max-age=120" </If>
原配置的错误原因
- 配置1:
! %{QUERY_STRING}语法错误,Apache表达式不支持直接对变量取反的写法,需使用标准的比较或操作符判断空值。 - 配置2:
%{QUERY_STRING} -z操作符顺序错误,-z是检测空字符串的操作符,必须放在变量前方,格式应为-z %{QUERY_STRING}。
内容的提问来源于stack exchange,提问作者Learner
相关产品推荐
相关产品推荐

