php - Laravel 5.1 - 显示存储在存储文件夹中的图像

标签 php laravel

我正在使用 Laravel 5.1 为网站制作图片上传功能。由于安全问题,我想将这些图像存储在/storage/app 文件夹中,而不是/public。图片的网址,例如:

/storage/app/images/<image_name>

为了从/storage/app获取图片,我为此设置了一个特定的路由:

http://app.com/image/<image_name>

将图像请求指向/storage:

Route::controllers([
    'image' => 'Frontend\ImageController',
]);

ImageController 中,这里是创建响应的代码:

public function missingMethod($filename = [])
{
    if (is_array($filename)) {
        $filename = implode('/', $filename);
    }
    // storage_path('app') - path to /storage/app folder
    $path = storage_path('app') . '/' . $filename;
    $file = \File::get($path);
    $type = \File::mimeType($path);

    return \Response::make($file,200)
        ->header("Content-Type", $type);
}

我的问题是,在使用此路由检索图像后,我无法在我的 View 中显示它们。没有 404、500 或任何错误状态代码,应该是请求 URL,但它只是显示一个损坏的图像图标。我的代码有什么问题吗?

谢谢!

最佳答案

对不起各位,我的/config文件夹中的一个php脚本有前导空格,导致http响应失败@@这么无意义的错误...谢谢大家的帮助!

关于php - Laravel 5.1 - 显示存储在存储文件夹中的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34757026/

相关文章:

PHP:get_class_vars() 与 get_object_vars()

php - php中如何对评论的评论进行整理

php - 拉维尔 4 : How to make pagination

php - Laravel 4 Eloquent /模型关系

php - Laravel Sail 不会在 Ubuntu 20.04 上构建 - groupadd : invalid group ID 'sail'

javascript - 如何获取php表单变量中的元素属性值?

javascript - 通过 jquery 动态添加的输入字段未提交

php - POST 请求来源

mysql - 启动 mariadb 时出错 - 没有这样的过程

Laravel Blade - 多种布局?