按照 Laravel 文档(我正在使用 sail 在 docker 中使用 Laravel),我为存储 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 建议首先使用 sail,但文档并未涵盖此行为。
必须在容器中创建符号链接!
在项目的根目录中: