与我的本地开发环境不同,我的产品(Debian,Nginx,PHP 7.1.22)环境未加载.env配置文件。
我总是收到Symfony错误:Environment variable not found
。
答案 0 :(得分:1)
只想提一下我在网络上找不到的问题的解决方案。
最后,我检查了index.php文件是否是最初加载的.env并发现以下几行:
if (!isset($_SERVER['APP_ENV'])) {
if (!class_exists(Dotenv::class)) {
throw new \RuntimeException('APP_ENV environment variable is not defined. You need to define environment variables for configuration or add "symfony/dotenv" as a Composer dependency to load variables from a .env file.');
}
(new Dotenv())->load(__DIR__.'/../.env');
}
意味着如果已经在Web服务器配置中设置了环境变量APP_ENV
,则不会加载.env。
因此,我还检查了我的网站的nginx配置,并删除了fpm env配置行fastcgi_param APP_ENV "prod";
现在可以了。
希望这对您也有帮助;)