0

我有一个 Laravel 6.0 应用程序,用户可以在其中将文件上传到服务器,并将其存储在laravel. 我使用的系统一直在一个较旧的 Laravel 5.6 项目中工作。

控制器给我的链接:

domainame.com/public/file?folder=文件夹名&文件=1569323440filename.png

控制器

public function getFile($foldername, $filename)
{
    $fullpath = "app/{$foldername}/{$filename}";

    return response()->download(storage_path($fullpath), null, [], null);
}

public function getFilesubfolder($foldername, $subfolder, $filename)
{
    $fullpath = "app/{$foldername}/{$subfolder}/{$filename}";

    return response()->download(storage_path($fullpath), null, [], null);
}

看法

{{ route('file.show' ,['folder' => 'empresas' , 'file' => $factura->archivo])}}

我得到的错误是 404 错误,因为尝试访问的链接不存在。在我之前的项目中,链接是这样的:

domainame.com/public/文件夹/文件

我创建了一个指向存储系统的符号链接。我是否缺少另一种类型的配置或其他东西?

4

1 回答 1

1

我已经解决了我的错误,如果人们来自谷歌搜索或其他东西,想在这里发布解决方案:

我的错误是从 Laravel 6.0 开始,变量路由必须是字面的。

就我而言,我改变了这个:

{{ route('file.show' ,['folder' => 'empresas' , 'file' => $factura->archivo])}}

对此:

{{ route('file.show' ,['foldername' => 'empresas' , 'filename' => $factura->archivo])}}

我打破了主意,因为我没有看到那个错误,希望它对处于我这种情况的任何人有所帮助

于 2020-02-21T10:45:19.583 回答