繁体   English   中英

Laravel 公共存储为图像返回 404

[英]Laravel public storage return 404 for image

按照 Laravel 文档(我在 docker 中使用 Laravel 使用 Sai),我为 storages php artisan storage:link创建了一个符号链接。 我也尝试使用从根目录开始的完整路径来重新创建链接。

然后我存储一个文件

// ...
$filename = 'signatures/signature_' . auth()->user()->id . '-' . uniqid() . '.' . $image_type;
Storage::disk('public')->put($filename, $image_base64);

之后,我可以成功地从控制台打开我的文件:

open public/storage/signatures/signature_101-62a876ce68884.png

当我尝试从我的网址访问 if 时,我得到一个 404:

http://laravel.test/storage/signatures/signature_101-62a876ce68884.png

我注意到通过尝试显示图像:

<img src="{{ url('/storage/' . $clients->signature->filename) }}">

最后我尝试了

rm public/storage
php artisan optimize:clear
php artisan storage:link

没有成功

我找到了解决方案。 Laravel 建议首先使用sai 并且文档没有涵盖这种行为。

符号链接必须在容器中创建!

在项目的根目录中:

  • rm 公共/存储
  • docker exec -it php artisan storage:link

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM