Symfony4 не загружает .env

В отличие от моей локальной среды разработки, моя среда prod (Debian, Nginx, PHP 7.1.22) не загружает файл конфигурации .env.

Я всегда получаю ошибку Symfony: Environment variable not found.

Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
1
0
2 372
1

Ответы 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');
}

Означает, что если env var APP_ENV уже установлен в конфигурации веб-сервера, .env не будет загружен.

Поэтому я проверил также свою конфигурацию nginx для своего веб-сайта и удалил строку конфигурации fpm env fastcgi_param APP_ENV "prod";.

Теперь это работает.

Надеюсь, это вам тоже поможет;)

Другие вопросы по теме