为什么apache HTTPD中的所有系统环境变量都为空?

为什么apache HTTPD中的所有系统环境变量都为空?,apache,Apache,我不能在SetHeader中使用任何系统环境变量: RequestHeader set "X-Header1" "%{USERNAME}e" RequestHeader set "X-Header2" "%{TMP}e" RequestHeader set "X-Header3" "%{ENV:TMP}" SetEnv HELLO "world" Reque

我不能在
SetHeader
中使用任何系统环境变量:

RequestHeader set "X-Header1" "%{USERNAME}e"
RequestHeader set "X-Header2" "%{TMP}e"
RequestHeader set "X-Header3" "%{ENV:TMP}"
SetEnv HELLO "world"
RequestHeader set "X-Header4" "%{HELLO}e"
结果如下:

X-Header1: (null)
X-Header2: (null)
X-Header3: (null)
X-Header4: world
因此,Apache只获取“自己的”环境变量,而不从启动httpd进程的系统环境中获取这些变量

我知道这些环境变量(例如
TMP
)已设置

Apache 2.4 Windows。

在中,您需要先使用PassEnv指令从shell传递环境变量,然后才能使用它们。下面是一个例子:

PassEnv USERNAME TMP