Php 在Laravel 5.4中存储和检索存储的文件
一个简单的场景: 1) 符号链接公共/存储到存储/应用/公共使用Php 在Laravel 5.4中存储和检索存储的文件,php,laravel-5,Php,Laravel 5,一个简单的场景: 1) 符号链接公共/存储到存储/应用/公共使用 php artisan storage:link 2) 使用上载文件 $path = $request->file('avatar')->store('avatars'); 3) 据我所知,我应该能够访问这个url下的文件——`www.example.com/storage/avatars/avatar.jpg 然而,我在第三步中得到的路径实际上是public/avatars/avatar.jpg,因此我最终将“p
php artisan storage:link
2) 使用上载文件
$path = $request->file('avatar')->store('avatars');
3) 据我所知,我应该能够访问这个url下的文件——`www.example.com/storage/avatars/avatar.jpg
然而,我在第三步中得到的路径实际上是public/avatars/avatar.jpg,因此我最终将“public/”部分替换为“”以获得正确的路径
似乎我遗漏了什么,但我就是找不到确切的内容
谢谢你的帮助 使用公共磁盘时,应将文件存储在公共磁盘中 您可以在store函数的第二个参数中指定磁盘
$path = $request->file('avatar')->store(
'avatars', 'public'
);
这确保文件存储在storage/app/public
中,公共目录中的storage
符号链接指向storage/app/public
现在,您可以简单地使用:
asset('storage/avatars/avatar.jpg');
它将从storage/app/public/avatars/avatar.jpg
您可能需要检查
storeAs
来重命名文件名,或者使用子目录来确保文件名是唯一的。Dude,太完美了:)