You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Blade模板中已上传的图片无法显示问题求助

Laravel Blade模板图片无法显示排查方案
  • 首先检查存储软链配置:Laravel默认存储在storage/app/public的文件需要通过软链映射到项目根目录的public/storage才能被外部访问,在项目根目录执行以下命令创建软链:
php artisan storage:link

执行完成后确认项目根目录的public文件夹下存在storage软链目录。

  • 检查字段对应关系:你提供的控制器上传逻辑中,将生成的文件名赋值给了$productAttrArr['attr_image'],对应数据库字段为attr_image,但Blade模板中读取的是$list->image字段,请确认返回给视图的$list对象中image字段是否确实存储了正确的文件名,是否和attr_image为同一字段的不同命名。
  • 验证文件真实存在:进入项目路径storage/app/public/media,确认是否存在1631177564.jpg文件。另外你上传逻辑中生成的文件名是9位随机数加扩展名,而你给出的src中的文件名为10位数字,请确认该文件名是否确实由你的上传逻辑生成。
  • 检查目录权限:如果是Linux/Mac运行环境,需要确保storage目录对web服务进程有读取权限,可执行以下命令赋权:
chmod -R 755 storage
chown -R www-data:www-data storage
# 不同环境web服务用户可能为apache、nginx,根据实际部署情况调整
  • 验证文件系统配置:打开config/filesystems.php,确认disks.public配置项默认值未被修改:
'public' => [
    'driver' => 'local',
    'root' => storage_path('app/public'),
    'url' => env('APP_URL').'/storage',
    'visibility' => 'public',
],
  • 状态码验证:上述排查完成后,直接在浏览器地址栏访问http://127.0.0.1:8000/storage/media/1631177564.jpg,根据返回状态码判断问题:返回404则对应文件不存在或软链未正常配置,返回403则为目录权限不足。

内容的提问来源于stack exchange,提问作者ahmad bhatti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 04:30:04