因为Tomcat是在Apache外部启动的,所以它无权访问Apache环境。这意味着您需要某种方式将环境变量从Apache传递到Tomcat。
如果使用来连接Apache和Tomcat
mod_jk,则可以使用
JkEnvVar指令将特定变量传递给Tomcat。从mod_jk文档中:
该指令
JkEnvVar允许您将环境变量从Apache服务器转发到Tomcat引擎。您可以将默认值作为第二个参数添加到指令。如果未明确指定默认值,则仅在运行时设置变量时才发送变量。可以在Tomcat端通过检索这些变量作为请求属性request.getAttribute(attributeName)。请注意,通过发送的变量JkEnvVar不会在中列出request.getAttributeNames()。
如果您使用的是HTTP代理(
mod_proxy)而不是
mod_jk,则可以使用
mod_headers,将环境变量作为请求标头传递,例如:
RequestHeader set X-MYVAR %{MYVAR}e…然后在Tomcat中,您必须提取
X-MYVAR标头。



