11

我只是在我的 .env 文件中更改了一个常量。新值使用 php-cli(通过 tinker)正确显示,但在我的 Web 应用程序(php-fpm)中没有显示。

到目前为止,我已经按照建议尝试了所有方法:

sudo service nginx restart
sudo service php7.0-fpm restart
sudo service php7.0-fpm reload

.

php artisan config:cache

这将在 bootstrap/cache/config.php 中生成一个缓存配置文件

php artisan config:clear

这将删除 bootstrap/cache/config.php 中的缓存配置文件

php artisan cache:clear

究竟是做什么的?它清除什么类型的缓存?

php artisan clear-compiled

这个明确的编译类

composer dump-autoload

这将生成/更新作曲家自动加载文件。

我有一些不属于任何配置文件的 .env 变量。所以运行任何工匠命令对我来说都是无用的。

以上 php artisan 命令都没有直接处理 $_ENV。

似乎 $_ENV 存储在服务器中的某个位置,一旦填充属性,laravel 就无法更新它。

我找到的唯一解决方案是重新启动服务器。

我正在运行一个 Laravel Forge 实例。

4

2 回答 2

13

如果它被缓存并且您需要重新加载它,您可以简单地使用:

php artisan config:clear

这将引入您此后所做的任何更改。

于 2016-06-16T05:08:53.737 回答
2

尝试删除文件上的配置:Bootstrap/cache/config.php

您也可以尝试: php artisan config:cache 或 php artisan cache:clear

于 2016-06-16T03:58:39.290 回答