猿问

为什么 Lumen 环境变量过时(或不匹配?)

因此,由于某种原因,我的 lumen .env 变量在后端回显时,与我在实际文件中的内容不匹配。

例如,APP_DEBUG在文件中设置为 true,但是当我将其回显时,我得到 false 或 null。此外,如果我试图改变APP_NAME什么都没有发生,它会回显一个过时的值。

我试过跑步php artisan cache:clear,但这似乎也不起作用。值得我在 docker 环境中运行它,不确定这是否会影响事情。我也在用 Lumen 6.0 运行 php 7.3。


沧海一幻觉
浏览 165回答 2
2回答

PIPIONE

好吧,这个问题确实与码头工人有关。事实证明,我们的环境在docker-compose.yml文件中定义了所有与 .env 相关的属性,这些属性正在覆盖内容。所以我只需要改变这个:environment:&nbsp; <<: *environment&nbsp; APP_NAME: <old value>&nbsp; APP_URL: http://auth.172.17.0.1.nip.io并添加 APP_DEBUG 并修改 APP_NAME。因此,如果其他人遇到这种情况并且您正在使用 docker,请确保 docker 没有覆盖 env 属性。

慕妹3146593

您需要运行php artisan config:clear以刷新配置文件的缓存。该命令php artisan cache:clear是刷新应用程序的缓存。如果您config:cache在部署过程中执行该命令,您应该确保您只是从配置文件中调用 env 函数。一旦配置被缓存,.env文件将不会被加载,所有对 env 函数的调用都将返回null。更多信息:https ://laravel.com/docs/6.x/configuration#configuration-caching
随时随地看视频慕课网APP
我要回答