Comment arrêter Laravel 5 de configurations de mise en cache?
Il est écrit dans Laravel 5 documentation php artisan config:cache
stocke toutes les configuration de l'application dans un seul fichier, ce qui rend l'application se charge plus rapidement.
Je veux savoir deux choses:
La première chose est de savoir comment faire de la force de Laravel arrêter la mise en cache de mon appli configurations? Par exemple, je veux Laravel pour lire le nom de ma base de données et le mot de passe de l' .env
fichier ou de la database.php
fichier de configuration, pas de la mise en cache des données.
La deuxième chose est, d'où vient Laravel stocker le fichier de configuration, afin que je puisse les supprimer en cas de besoin? Je sais qu'il est un Artisan de la commande pour que, qui est php artisan config:clear
, mais je veux savoir où sont les fichiers stockés.
- C'est une bonne question +1
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas arrêter la mise en cache des fichiers de configuration, car il ne se produit pas automatiquement. La seule chose que vous devez faire, est de ne pas appeler
config:cache
.Le fichier lui-même peut être trouvé dans
bootstrap/cache/config.php
.Note que l'emplacement de la compilation du fichier de config a changé récemment. La vôtre peut-être aussi dans
vendor/config.php
oustorage/framework/config.php
. Avec une nouvelle installation, ou si vous exécutezcomposer update
le fichier doit être dansbootstrap/cache
bien.config:cache
cours de développement local, vous pouvez annuler cette par la suppression de labootstrap/cache/config.php
fichier. Sinon, vous risquez de l'expérience que l'appelgetenv()
ne sera pas de retour les valeurs souhaitéesconfig:cache
post déploiement crochet "envoyer" (pour le serveur de production). Curieusement, en quelque sorte, il ne prend pas toutes les valeurs de la .fichier env.rm bootstrap/cache/config.php
.$config =require base_path('config/services.php');
. Nous avons lutté avec cela à quelques reprises dans le passé. Seulement laravel peut faire quelque chose d'aussi simple problématique.Comme par le poste ici: https://github.com/laravel/framework/issues/2501
Pour moi, cela implique d'ajouter des
CACHE_DRIVER=array
à mon.env
fichier. C'est ensuite capté par mon config/cache.php fichier qui inclut la ligne:'default' => env('CACHE_DRIVER', 'file'),
Évidemment, vous pouvez le changer directement dans le config/cache.php mais je préfère utiliser le .fichier de configuration afin que je puisse le désactiver pour le développement de sites et de permettre à la production.