project-root/storage/products
下的laravel流明中上传了图像
但我不知道如何在浏览器中检查上传的图像,我的存储文件夹在公共目录之外,我已经尝试了
http://192.168.11.102:8000/storage/products/upc_1443002080.jpg
http://192.168.11.102:8000/index.php/storage/products/upc_1443002080.jpg
但我得到了 - 抱歉,找不到你要找的页面。你能帮我吗?
更新 如你所说,我创建了这样的路线 -
$app->get('products/{filename}', function ($filename) {
$path = storage_path().'/products/'.$filename;
if (file_exists($path)) {
return Response::download($path);
}});
但是当我点击http://192.168.11.102:8000/storage/products/upc_1443002080.jpg时 它是下载文件而不是在浏览器中显示。你有什么主意吗? 我在Response :: download function -
中有以下代码public static function download($file, $name = null, array $headers = [], $disposition = 'attachment')
{
$response = new BinaryFileResponse($file, 200, $headers, true, $disposition);
if (! is_null($name)) {
return $response->setContentDisposition($disposition, $name, str_replace('%', '', Str::ascii($name)));
}
return $response;
}
答案 0 :(得分:1)
存储目录中存储的文件受到保护。文档根目录是/ public。要在浏览器中查看上传的项目,您需要创建一个接受文件名的路由,然后控制器将获取该文件。