在Apache + PHP-FPM中设置环境变量

时间:2016-01-15 15:33:27

标签: php apache

我在php-fpm池配置文件中设置环境变量时遇到一些问题。

当我在env[SOMENAME] = somevalue文件中设置/etc/php5/fpm/pool/www.conf时,php无法通过$_SERVER['SOMENAME']获取值。我是否需要在apache / php中设置一些配置设置以从该环境变量中获取值?

3 个答案:

答案 0 :(得分:0)

您可以在/etc/apache2/envvars中设置环境变量。 只在配置文件中添加以下行并重新启动apache。

export SOMENAME=somevalue

之后,您可以通过PHP中的$_SERVER['SOMENAME']访问它。

答案 1 :(得分:0)

将Fiete的答案与Kufner的答案合并,您会得到正确的答案。

在Apache的某个地方,您想以某种方式设置环境变量:

SetEnv SOME_VAR "a value"

或使用Rewrite:

RewriteRule ^ - [E:SOME_VAR="a value"]

您的PHP脚本(根据phpinfo())将在$_SERVER数组中为您提供此变量。

答案 2 :(得分:-1)

在Apache配置中,您可以使用SetEnv指令。对于PHP FPM,你说得对。

但是$_SERVER中没有环境变量,它们位于$_ENV变量中。因此,您应该在somevalue中看到$_ENV['SOMENAME']