Laravel项目部分页面导航栏Logo不显示问题求助
解决方案
问题出在你使用了相对路径引用Logo,当页面处于非根路由(比如/recipes、/profile)时,浏览器会基于当前页面的URL路径拼接资源地址,导致请求路径错误。
修复步骤:
- 确保Logo文件位置正确:将
Simply_Recipes_Logo.png放在项目的public目录下(这是Laravel默认的静态资源存放目录)。 - 使用Laravel的资源助手生成绝对路径:在
layout.blade.php中,把Logo的src属性替换为asset()助手函数生成的绝对路径:<img src="{{ asset('Simply_Recipes_Logo.png') }}" width="85" height="24">asset()函数会自动基于你的应用根URL生成正确的资源路径,无论当前页面在哪个路由层级,都能正确指向public目录下的Logo文件。
额外优化(可选):
你导航栏中的All recipes链接使用了url('public/recipes'),这会导致URL中出现多余的public前缀,建议修改为:
<a href="{{ url('recipes') }}" class="nav-link" aria-current="page">All recipes</a>
Laravel的路由系统已经以public目录为入口,无需手动添加public路径。
内容的提问来源于stack exchange,提问作者Myoko
相关产品推荐
相关产品推荐

