Apache:环境变量的范围

Apache:环境变量的范围

虽然有关于 Apache 环境变量的文档,但我找不到一个重要问题的答案。假设我使用重写规则来设置环境变量

RewriteRule ... ... [E=something:1]

“某物”的范围是什么 - 全局 Apache 服务器(这意味着“某物”将可用于其他请求事务),此请求(意味着“某物”仅对此 http 请求有效(及其相关处理 - 但内部重定向和其他内部内容 - 它们被视为此请求还是另一个请求?),并且可以在另一个(并发)请求中进行不同的设置?

答案1

范围是此请求,可以在另一个并发请求中设置不同。文档的相关部分如下:

按请求设置条件

为了增加灵活性,mod_setenvif 提供的指令允许根据每个请求设置环境变量,条件是特定请求的特征。例如,只有当特定浏览器 (User-Agent) 发出请求时,或者只有当找到特定的 Referer [sic] 标头时,才可以设置变量。通过 mod_rewrite 的 RewriteRule 可以使用 [E=...] 选项来设置环境变量,从而实现更大的灵活性。

来源

相关内容