Laravel 5.4无法在刀片中的公共存储中查看图像

问题描述 投票:0回答:1

我无法让Laravel显示公共存储中的图像。

每个用户都有自己的文件夹,我想显示他们的个人资料图片。

我到处寻找答案,我正在做一切建议但它仍然不会显示图像。

  • 我跑php artisan storage:link
  • 我已经确定Options FollowSymLinks是在Apache中设置的
  • 该图像存在于公共存储文件夹中
  • 我已将用户文件夹和图像的权限设置为777

我尝试了以下内容,但未显示图像

<img src="{{ asset('storage/' . $userfolder. '/profile_image.png') }}">

如果我在浏览器中转到图像的URL,我会收到403错误消息。

我不知道我是否遗漏了这里的任何东西

'disks' => [

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

        'public' => [
            'driver' => 'local',
            'root' => storage_path('app/public'),
            'url' => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],
...
php image laravel-5.4
1个回答
0
投票

请确保:

$userfolder = $filename . '_' . time() . '.' .$extension;

不:

$userfolder = $request->file('imagePath')->storeAs('public', $fileNameToStore);

第一个代码将文件存储为filename.ext,第二个代码将文件存储为public/filename.ext

使用src="{{ asset('storage/'.....将为您提供public/ folder的路径,因此使用src="{{ asset('storage/'.' $userfolder'与控制器中的第一个代码将显示图像

© www.soinside.com 2019 - 2024. All rights reserved.