我一直在尝试在浏览器中显示上传的图像,但没有任何显示,因为没有找到

时间:2018-04-23 10:07:51

标签: php laravel-5

我一直在尝试在浏览器中显示上传的图片,但没有显示任何内容,因为没有找到。

我的代码是用php编写的,使用laravel 5.5框架,这就是配置

<?php

return [

    'default' => env('FILESYSTEM_DRIVER', 'local'),
    'cloud' => env('FILESYSTEM_CLOUD', 's3'),

    'disks' => [

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

        'public' => [
            'driver'     => 'local',
            'root'       => storage_path('app/public'),
            'url'        => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],

        's3' => [
            'driver' => 's3',
            'key'    => env('AWS_ACCESS_KEY_ID'),
            'secret' => env('AWS_SECRET_ACCESS_KEY'),
            'region' => env('AWS_DEFAULT_REGION'),
            'bucket' => env('AWS_BUCKET'),
        ],

    ],

];

我在控制器中存储的方式是这样的

$path = $request->file('image');
if (! is_null($path)) {
  $path = $path->store('public/blog');
}

哪个没问题,

我在刀片模板中调用的方式是这样的:

<a href="{{ route('single.post', $blog->slug) }}">
    <img src="{{ asset("storage/app/public/{$blog->image}") }}">
</a>

我已经在终端php artisan storage:link中运行,但没有显示。

提前致谢

1 个答案:

答案 0 :(得分:1)

从路径中删除“/ app / public”,因为您已经运行了storage:link命令,该命令将在公用文件夹中创建一个快捷方式链接到存储文件夹。