Laravel 5.0 配置文件 mail.php 未加载

Laravel 5.0 configuration file mail.php not loaded

我在 Laravel 5.0

中的配置有问题

我从 .env 文件配置了环境 local。该机器是一台宅基地机器,我从 Homestead.yaml 中删除了 APP_ENV 只是为了确定。

环境设置为本地,我通过提示$app->environment()

确认

我在本地config目录下添加了几个配置文件(local/filesystems.php, local/mail.php, local/services.php).有趣的是 filesystems.php 被加载但邮件没有。如果我从 Illuminate\Foundation\Bootstrap\LoadConfiguration 转储 getConfigurationFiles() 我得到

array:11 [▼
  "app" => "/home/vagrant/Code/molkerei/config/app.php"
  "auth" => "/home/vagrant/Code/molkerei/config/auth.php"
  "cache" => "/home/vagrant/Code/molkerei/config/cache.php"
  "compile" => "/home/vagrant/Code/molkerei/config/compile.php"
  "database" => "/home/vagrant/Code/molkerei/config/database.php"
  "filesystems" => "/home/vagrant/Code/molkerei/config/local/filesystems.php"
  "mail" => "/home/vagrant/Code/molkerei/config/mail.php"
  "services" => "/home/vagrant/Code/molkerei/config/services.php"
  "queue" => "/home/vagrant/Code/molkerei/config/queue.php"
  "session" => "/home/vagrant/Code/molkerei/config/session.php"
  "view" => "/home/vagrant/Code/molkerei/config/view.php"
]

我已经尝试使用 php artisan cache:clear 清理缓存,但甚至没有缓存文件(它被设置为文件系统)

知道为什么配置没有正确加载吗?

在撰写此答案时 - 不再有 'sub directories' 用于配置,就像以前在 L4 中一样 - 您现在有一个主配置文件夹。

如果需要,您可以使用“.env”文件中的特定配置覆盖任何默认配置。

所以在你的 app\config\mail.php 文件中你会写:

'driver' => env('MAIL_DRIVER', 'mandrill'),

这意味着默认情况下它将使用 Mandrill - 除非在您的 .env 文件中放置

MAIL_DRIVER=smtp

这意味着在您的宅基地服务器上,它现在将使用 SMTP 发送邮件。

p.s。我不知道为什么文件系统会在您的示例中加载 local 配置 - 这可能是一个错误。