Скачать файл по ссылке в laravel 5.3

Я хочу создать гиперссылку для загрузки файла в папку хранения / приложения / общедоступной. Я использую это в лезвии

<a href="{{ asset('storage/app/public/1489082996.docx') }}" download="{{ asset('storage/app/public/1489082996.docx') }}"> Read Paper</a>

Но это покажет мне файл ошибки не найден. Что мне делать
делать
это моя файловая система.php

'disks' => [

'local' => [
'driver' => 'local',
'root' => storage_path('app'),
],

'public' => [
'driver' => 'local',
'root' => storage_path('app/public'),
'visibility' => 'public',
],

0

Решение

Простой способ, позволяющий хранить ваши файлы в папке хранилища и загружать без системных изменений: (в laravel 5.3)

Вы можете сделать нормальную ссылку на файл:

<a href="/download/1489082996.docx"> Read Paper</a>

Затем вам нужно настроить ваши маршруты / web.php

Route::get('/download/{file}', function ($file='') {
return response()->download(storage_path('app/public/'.$file));
});

Это должно открыть диалог загрузки для всех типов файлов, а также для IMG и PDF. Если вы хотите показывать файлы онлайн, а не скачивать, вам следует использовать метод файла:

return response()->file(storage_path('app/public/'.$file));
2

Другие решения

Пути к активам относительно /public каталог. Так что вы бы просто хотели asset('1489082996.docx') при условии, что вы правильно установили связь с каталогом хранилища php artisan storage:link,

0

По вопросам рекламы [email protected]