Php Laravel 5.2队列忽略.env

Php Laravel 5.2队列忽略.env,php,laravel-5.2,Php,Laravel 5.2,我有一个Laravel 5.2应用程序,当用户购买产品时,它会发送一些电子邮件。电子邮件视图包括对某些图像的引用,如: <img src="{{ asset($purchase->image) }}"> 到 并进行了试购。这个过程是有效的,邮件被发送了,但是发送的邮件中的图像URL是错误的。似乎我配置的APP\u URL未被拾取 .env APP_URL=http://localhost/path/to/app config/app.php 'url' => en

我有一个Laravel 5.2应用程序,当用户购买产品时,它会发送一些电子邮件。电子邮件视图包括对某些图像的引用,如:

<img src="{{ asset($purchase->image) }}">

并进行了试购。这个过程是有效的,邮件被发送了,但是发送的邮件中的图像URL是错误的。似乎我配置的APP\u URL未被拾取

.env

APP_URL=http://localhost/path/to/app
config/app.php

'url' => env('APP_URL', 'http://localhost'),
我的电子邮件中生成的URL
asset()
为:

http://localhost/images/foo.jpg
这是不正确的,它们应该是:

http://localhost/path/to/app/images/foo.jpg
它看起来像是在使用队列,我的
.env
中定义的
应用程序URL
不可见,因此默认值为
http://localhost使用了
。不使用队列,同样的代码也可以正常工作

我能想到的唯一一件事是,处理队列的CLI PHP环境在某种程度上与Apache PHP环境不同,但我无法想象有什么不同会导致忽略
.env


2年前,我在使用Laravel4.2的人那里发现了一个问题,没有答案。我找到了一些其他类似的参考资料,但没有解决方案。有人看到这一点或有什么建议吗?

感谢@num8er找到了解决方案

这是来自Symfony的Laravel中的一个已知问题:

解决方法是按照注释中的@num8er建议,在视图中硬编码资产路径,而不是使用
asset()


我知道这很愚蠢。但是
env('APP_URL')./images/'.$purchase->image
p.s.这只是一种变通方法,也许对于命令行执行,它需要不同的env文件?你能检查一下
资产
方法的代码吗?我想这个问题还没有解决。在我的自定义artisan控制台命令中,我总是使用精确的路径、URL等。因为这个问题从来没有像现在这样工作过。谢谢,我猜这就是我必须要做的。。。谢谢你的帮助@num8er我知道已经晚了,但你的评论才是真正的答案——这是一个bug。如果你想把它作为答案转载,我很乐意接受它!:-)谢谢)我不是在寻找选票)只是想帮忙。只需总结您的解决方案,并用解决方案回答您自己的问题,以帮助来到这里的人
http://localhost/images/foo.jpg
http://localhost/path/to/app/images/foo.jpg
config('app.url') . '/images/' . $purchase->image