Laravel 9最新版本中路径正确但图片无法加载的问题求助
Laravel 9 图片无法加载的解决方法
问题核心:你直接使用
resources/images/logo/tmhslogo.png作为图片路径,但Laravel的前端可访问静态资源默认存放在public目录,resources属于后端源码目录,前端无法直接读取。修复方案:
- 迁移图片位置:将
resources/images/logo/tmhslogo.png复制到public/images/logo/目录下(若目录不存在自行创建)。 - 使用Laravel资源辅助函数:在视图中用
asset()生成正确的资源访问路径,替换原有的src属性:<nav class="navbar navbar-expand-lg navbar-light bg-light"> <div class="container-fluid"> <a class="navbar-brand" href="{{ url('/') }}"> TMHS <img src="{{ asset('images/logo/tmhslogo.png') }}" width="30" height="30" class="d-inline-block align-top" alt="TMHS logo"> TMHS logo </a> - 修正跳转链接:原代码中的
href="index.php"不符合Laravel路由规范,建议改用{{ url('/') }}或命名路由生成跳转地址。
- 迁移图片位置:将
额外排查项:
- 确认
public/images/logo/tmhslogo.png文件存在,且文件权限设置正确(通常设为755)。 - 若使用Laravel Mix编译资源,可将图片放入
resources/assets/images,并在webpack.mix.js中添加复制规则:
之后运行mix.copy('resources/assets/images', 'public/images');npm run dev或npm run prod完成资源编译。
- 确认
内容的提问来源于stack exchange,提问作者Tahir Abbas
相关产品推荐
相关产品推荐

