在Laravel 5文档中写道,php artisan config:cache
将所有应用程序配置存储在一个文件中,这使得应用程序加载速度更快。
我想知道两件事:
首先,如何强制Laravel停止缓存我的应用配置?例如,我希望Laravel从.env
文件或database.php
配置文件中读取数据库的名称和密码,而不是从缓存的数据中读取。
第二件事是,Laravel在哪里存储这个缓存的配置文件,以便我可以在需要时删除它?我知道有一个Artisan命令,php artisan config:clear
,但我想知道文件的存储位置。
答案 0 :(得分:46)
您无法停止配置文件的缓存,因为它不会自动发生。您唯一需要做的就是不要拨打config:cache
。
文件本身可以在bootstrap/cache/config.php
。
注意最近编译的配置文件的位置已更改。你的也可能在vendor/config.php
或storage/framework/config.php
。使用全新安装或运行composer update
时,文件应位于bootstrap/cache
中。
答案 1 :(得分:0)
根据此处的帖子:https://github.com/laravel/framework/issues/2501
“将缓存驱动程序更改为本地环境的阵列。”
对我来说,这涉及将CACHE_DRIVER=array
添加到我的.env
文件中。然后由我的config / cache.php文件(其中包括以下行)进行选择:
'default' => env('CACHE_DRIVER', 'file'),
很显然,您可以直接在config / cache.php中对其进行更改,但是我更喜欢使用.env文件,以便可以将其禁用用于开发站点并启用生产。
答案 2 :(得分:0)
如果您在项目中删除此目录[bootstrap/cache
]并将其替换为文件,那么团队中的任何人都不可能意外地缓存您的配置。