Ceci est une ancienne révision du document !


Les fichiers .env

Les applications Symfony sont livrées avec un fichier appelé .env situé dans le répertoire racine du projet.
Ce fichier est utilisé pour définir la valeur des variables d'environnement.

Dans tous les environnements, les fichiers suivants sont chargés s'ils existent,
Le dernier chargé étant prioritaires sur les premiers :

  • .env contient les valeurs par défaut des variables d'environnement nécessaires à l'application.
  • .env.local est un fichier non validé avec des surcharges locales.
  • .env.$APP_ENV contient les valeurs par défaut spécifiques à l'environnement
  • .env.$APP_ENV.local fichier non engagé avec des valeurs spécifiques à l'environnement
Les variables d'environnement réelles sont prioritaires sur les les variables définies dans les fichiers .env.
NE DÉFINISSEZ PAS DE SECRETS DE PRODUCTION DANS CE FICHIER NI DANS AUCUN AUTRE FICHIER ENGAGÉ.
https://symfony.com/doc/current/configuration/secrets.html

Convention de nommages

  • Les fichiers .env se terminant par local, ne sont pas commités.

Plusieurs fichiers .env

On peut créer plusieurs fichiers .env en fonction de l'environnement ou on se trouve.

  • .env
  • .env.local
  • .env.prod.local
  • .env.dev.local

Le fichier .env.xxx qui sera utilisé pour surchargé le fichier .env est paramétré dans le fichier .env lui méme en definissant la variable APP_ENV

.env
....
APP_ENV=prod
# Chargera .env.prod.local
...

En production

Exécutercomposer dump-env prod pour compiler les fichiers .env pour une utilisation en production (nécessite symfony/flex >=1.2).
https://symfony.com/doc/current/best_practices.htmsymfony l#use-environment-variables-for-infrastructure-configuration

Sources & Ressources

Vous pourriez laisser un commentaire si vous étiez connecté.