加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – 如何在Laravel路由中返回.xml文件

发布时间:2020-12-14 19:34:10 所属栏目:大数据 来源:网络整理
导读:我已生成站点地图.xml文件并想要返回.我将文件放在我的views文件夹中并制作了这条路线: Route::get('/site-map',function(){ return view('sitemap.xml');}); 虽然我不能让它显示出来. 解决方法 默认情况下,Laravel不支持将.xml文件作为视图加载.话虽如此,
我已生成站点地图.xml文件并想要返回.我将文件放在我的views文件夹中并制作了这条路线:

Route::get('/site-map',function(){
    return view('sitemap.xml');
});

虽然我不能让它显示出来.

解决方法

默认情况下,Laravel不支持将.xml文件作为视图加载.话虽如此,您的问题有几种解决方案:

>最简单的方法是将sitemap.xml放在/ public目录中.浏览器将能够在http://yourdomain.com/sitemap.xml上查看该文件.
>您可以加载文件的内容并返回响应,将Content-Type标头设置为application / xml或text / xml,告诉浏览器您所服务的文件实际上是XML文档.

return response(file_get_contents(resource_path('sitemap.xml')),200,[
    'Content-Type' => 'application/xml'
]);

>或者,您可以通过在服务提供程序中执行类似的操作(例如AppServiceProvider的register方法,位于app / Providers / AppServiceProvider.php),告诉Laravel的查找程序支持.xml扩展名:

app('view.finder')->addExtension('xml');

完成后,Laravel应将.xml识别为有效的视图扩展,并将XML文件加载为视图.如果您想要:在视图中传递数据并使用Blade / PHP,还有其他好处:

return view('sitemap');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读