【发布时间】:2009-07-28 20:17:14
【问题描述】:
如果我希望我的网址看起来像 www.mysite.com/sitemap.xml,我的路线在 Global.asax 文件中的外观如何?
路由和返回静态 Sitemap.xml 文件的最简单方法是什么?
【问题讨论】:
标签: c# asp.net-mvc routing sitemap
如果我希望我的网址看起来像 www.mysite.com/sitemap.xml,我的路线在 Global.asax 文件中的外观如何?
路由和返回静态 Sitemap.xml 文件的最简单方法是什么?
【问题讨论】:
标签: c# asp.net-mvc routing sitemap
这种类型的文件不需要路由。只需将 .xml 文件放在应用程序目录的根目录中,网络服务器就应该能够使用您指定的 URL 来提供它。
ASP.Net MVC 会立即忽略静态文件类型。
【讨论】:
我相信,就像您网站中的任何静态文件(图像、脚本、css)一样,它应该可以正常工作。请参阅 Phil Haack 的 blog on this。
唯一需要路由的时候是当您希望它动态生成时;当您在磁盘上没有静态文件但想要动态生成一个时。在这种情况下,您需要将其映射到将处理内容生成的控制器和操作。
【讨论】:
ASP.Net MVC 根本不会阻止您通过文件路径提供文件。事实上,只要不被路由覆盖,就可以通过路径提供所有你想要的内容(甚至是 aspx 页面)。
所以你的站点地图文件很好,你不需要为它写一个路线。把路径写成这样:
http://myserver.com/sitemap.xml
我猜你要把它发送给谷歌网站管理员,或任何地方。
【讨论】:
您的 sitemap.xml 是否在您网站的根目录中?如果是这样,您不需要指定路线。 sitemap.xml 将是默认提供的文件。
【讨论】: