我已将文件存储在 storage/app/files 文件夹中$path=$request->file->store('files'),并将路径“files/LKaOlKhE5uITzAbRj5PkkNunWldmUTm3tOWPfLxO.doc”保存在表的列名中file。
我还通过php artisan storage:link.
在我的视图刀片文件中,我把这个
<a href="@if(count($personal_information)) {{asset('storage/'.$personal_information->file)}} @endif" download>Download File</a>
Run Code Online (Sandbox Code Playgroud)
下载文件的链接是 http://localhost:8000/storage/files/LKaOlKhE5uITzAbRj5PkkNunWldmUTm3tOWPfLxO.doc
但我得到了错误
RouteCollection.php 第 161 行中的 NotFoundHttpException
如果我/app在/storage它之后添加它会给出相同的错误。如何从我的storage/app/files文件夹下载文件?
Ana*_*mov 11
问题是默认情况下存储文件夹不可公开访问。存储文件夹很可能用于保存一些其他用户无法访问的私人文件,例如用户图片。如果您将它们移动到公用文件夹,则每个人都可以访问文件。我在 Laravel 5.4 上遇到了类似的问题,我通过编写下载文件的路径做了一些小改动。
Route::get('files/{file_name}', function($file_name = null)
{
$path = storage_path().'/'.'app'.'/files/'.$file_name;
if (file_exists($path)) {
return Response::download($path);
}
});
Run Code Online (Sandbox Code Playgroud)
或者您可以将您的文件保存到公共文件夹中。
| 归档时间: |
|
| 查看次数: |
14648 次 |
| 最近记录: |