我试图在PHP应用程序中使用自定义环境变量进行环境检测。我已经在/ etc / environment中设置了系统范围的变量,重新启动,并使用printenv检查它是否可以通过终端看到。
我还检查了在命令行运行PHP时它是否可见:
php -r 'echo getenv("LOCAL_DEVELOPMENT");'
//returns 'true' as expected
但是,当我从网页脚本尝试时,找不到该变量:
var_dump(getenv("LOCAL_DEVELOPMENT"));
//returns 'boolean false' (not expected)
我正在将Ubuntu 12.04 LTS与PHP 5.4和Apache 2.2一起使用。
为什么从Web脚本中看不到变量,我该如何解决?
假设您使用的是apache服务器,出于安全性考虑,我认为它仅限于Apache,受系统环境变量的限制。
您应该在apache之类的环境中设置env变量,SetEnv LOCAL_DEVELOPMENT true
甚至更好SetEnv APPLICATION_ENV development
,通常将其视为标准。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句