如何解决Sitemap.xml 未在 ActionResult 中打开
我在 Home Controller 中创建了一个带有站点地图操作的 URL。如果你击中 /首页/站点地图 它显示了这一点:
但是一旦我击中 站点地图.xml url 显示 404 错误:
路由已正确配置在 RouteConfig.cs 像这样
routes.MapRoute( "Sitemap","sitemap.xml",new { controller = "Home",action = "Sitemap" } );
网址有什么问题?
解决方法
当路由针对磁盘文件的请求时,设置 routes.RouteExistingFiles = true;
使路由系统更具包容性。但是现在我们应该使用 IgnoreRoute
类的 RouteCollection
方法,以防止针对我们的路由评估 sitemap.xml
URL。 IgnoreRoute
方法在 RouteCollection
中创建一个条目,其中路由处理程序是 StopRoutingHandler
类的实例,而不是 MvcRouteHandler
。
routes.RouteExistingFiles = true;
routes.IgnoreRoute("sitemap.xml");
routes.MapRoute("Sitemap","sitemap.xml",new { controller = "Home",action = "Sitemap" });
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。