我在我的laravel视图中使用此代码来回显文件路径,但它在chrome dev工具中出现了404响应。
<img src="{{ URL::to('/').Storage::url($post->image) }}">
将其发送到页面上
http://localhost:8000/storage/public/bd0e2f7f.png
文件存在那里,这是文件的正确名称所以我不完全确定它为什么会出现404!
答案 0 :(得分:1)
看起来即使从app
根文件夹看到你的路径很好,但它并不是laravel正在寻找它的地方。 Laravel会在app/public
内查找您的路径,从而生成内部app/public/storage/public/bd0e2f7f.png
,除非您在app/storage/public
和`app / public之间创建了符号链接,否则不会找到文件。
解决方案taken from the documentation将运行:
php artisan storage:link
从命令行创建上述链接,并允许您使用网址http://localhost:8000/storage/bd0e2f7f.png
访问该文件,而不是http://localhost:8000/storage/public/bd0e2f7f.png
storage/app/public
目录可用于存储应公开访问的用户生成的文件,例如个人资料头像。您应该在public / storage处创建一个指向此目录的符号链接。您可以使用php artisan storage:link命令创建链接。 source
答案 1 :(得分:0)
简单的解决方案可以是:
<img src="{{ Storage::url($post->image) }}">
参考here。
我假设你已经包含Storage
,因为你也在代码中使用了它,如果没有,那么请使用它:
<img src="{{ \Illuminate\Support\Facades\Storage::url($post->image) }}">