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

Laravel开发环境中storage目录图片无法显示求助

解决Laravel存储图片无法在前端显示的问题

核心原因

Laravel的storage/app目录默认不对外暴露,Web服务器(包括内置开发服务器)只能直接访问public目录下的文件,所以直接通过/storage/app/...的URL访问必然失败。

分步解决方案

  1. 调整存储路径(推荐)
    确保上传时将文件保存到storage/app/public/news目录(而非storage/app/news),这是Laravel预设的公共存储目录。

  2. 创建存储符号链接
    在项目根目录执行Artisan命令,将storage/app/public链接到public/storage:

    php artisan storage:link
    

    执行成功后,你会在public目录下看到storage软链接。

  3. 修正前端URL
    将原代码中的URL修改为:

    {{ url('/storage/news/' . $val2->id . '.png') }}
    

    注意:如果实际上传的是jpg文件,要把URL里的.png改成.jpg,扩展名必须和文件一致!

备选方案(不修改上传路径时)

如果坚持将文件存在storage/app/news,可以手动创建单独的符号链接:

ln -s ../storage/app/news public/news

然后前端URL改为:

{{ url('/news/' . $val2->id . '.png') }}

权限检查

最后确认存储目录权限正确:

chmod -R 755 storage/
chmod -R 644 storage/app/news/

内容的提问来源于stack exchange,提问作者Asjid Ali

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 17:27:30