首页 > 解决方案 > Laravel Nova 上传的图像文件未在暂存环境中显示

问题描述

我已经部署了一个 laravel 应用程序,它使用 Nova 管理员对 Bluehost VPS 帐户进行后端管理。按照 laravel 文档中的建议,我在 storage 和 public 之间创建了一个符号链接。

我已经设置了一个资源来上传这样的图像

Avatar::make('Image')->onlyOnIndex(),

Image::make('Image')->disk('public')
->path('item-category')->required()->hideFromIndex()

我正在使用公共磁盘进行存储,文件系统磁盘配置如下

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

在我的本地系统上,我能够看到显示的实际图像,但在暂存时,图像已成功上传,但由于找不到图像而无法显示 在此处输入图像描述

记录像这样存储在数据库中 在此处输入图像描述

为什么相同的配置在我的本地开发系统上有效,但在登台服务器上无效?花了我早上最好的时间来解决这个问题。

标签: phplaravellaravel-nova

解决方案


尝试运行 artisan 命令php artisan storage:link,这将创建一个从公用文件夹到存储文件夹的符号链接。


推荐阅读