在PHP脚本中获取环境变量

时间:2013-08-22 13:20:42

标签: php apache environment-variables virtualhost

在我的Apache(2.2)virtualHost配置中,我想将错误日志传送到其他地方。

<VirtualHost *:80>

  ....

   SetEnv toPhp hello
   ErrorLog "|php /var/www/error.php >>/var/www/logs/vialora.log"

  ....

</VirtualHost>

但是,虽然此虚拟主机所在的站点中现在提供了toPhp变量,但error.php中缺少该变量。如何访问此环境变量,假设其值是动态的?

1 个答案:

答案 0 :(得分:0)

从我的虚拟主机中设置:

<VirtualHost *:80>
...
SetEnv APPLICATION_ENV development
...
</VirtualHost>

然后从我在这个虚拟主机中的PHP脚本中写道:

// Display errors (just in case)
ini_set("display_errors", E_ALL | E_STRICT);

// Define application environment
defined('APPLICATION_ENV') ||
        define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));

像魅力一样工作。