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

Laravel 9图片上传后无法显示问题求助

问题原因及解决方法

核心问题1:图片URL路径错误

你前端生成的URL路径有误。Laravel中,public磁盘的存储目录是storage/app/public,通过符号链接映射后,前端访问的路径应该以/storage/开头,而非/storage/app/public/。

控制器中$path = $request->file('img')->store('boutique-storage', 'public');生成的路径类似boutique-storage/xxx.jpg,数据库存储的就是这个值。但前端代码拼接成了storage/app/public/boutique-storage/xxx.jpg,这指向的是不存在的路径(符号链接已将public/storage映射到storage/app/public)。

修正前端代码:
将img标签的src改为:

<img src="{{ asset('storage/' . $boutique->img) }}" alt="Produit" class="img-produit" />

核心问题2:未创建public磁盘的符号链接

如果没创建符号链接,Laravel无法通过Web访问storage/app/public下的文件。需要在项目根目录执行以下Artisan命令:

php artisan storage:link

执行后,public目录下会生成storage符号链接,指向storage/app/public目录,Web才能正确访问存储的图片。

验证步骤

  1. 执行storage:link后,检查项目public目录下是否出现storage符号链接文件夹。
  2. 查看前端生成的img标签src,确认路径为/storage/boutique-storage/xxx.jpg这类格式。
  3. 直接在浏览器地址栏访问该URL,确认能正常加载图片。

内容的提问来源于stack exchange,提问作者Caroline Dorchies

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 20:20:16