Apache RewriteCondition:检查属性是否已设置

时间:2012-09-07 13:06:19

标签: apache mod-rewrite rewrite httprequest

出于安全原因,我们有一个HTTP请求,如果HTTP请求(在我们的例子中称为HTTP_IndividualAreaCode)设置为某个数字,则授予访问权限。但是当它是空的时候被拒绝。但是如果某人来了,根本没有设置此属性,则授予访问权限(当检查等于“”的属性时,这不会验证为真。)

如何创建一个RewriteCond,它还检查属性是否完全设置(如PHP中的isset)。

1 个答案:

答案 0 :(得分:1)

您可以使用%{ENV:variable}变量。例如:

RewriteCond %{ENV:HTTP_IndividualAreaCode} [0-9]+
RewriteRule ^ /do/something [L]

请注意,mod_rewrite可以在任何模块设置此环境变量之前或之后执行。因此,这并不总是保证在重写引擎执行此条件时将设置var。