我已经将MVC3 web应用程序添加到由普通的旧html文件组成的现有网站。当你请求一个特定的文件时,这很好,但是我没有想到的是,通过改变站点来使用.Net 4,它不再需要注意IIS中的默认文档设置(在这种情况下是IIS 6)。因此,例如,我可以请求www.something.com/index.html,但如果我请求www.something.com,我会得到一个资源未找到的错误页面。 Global.asax中是否有MapRoute,我可以指定将站点路由网址映射到index.html?如何在MVC3网站上获取默认html页面
回答
这很正常。 IIS 6.0不支持无扩展名的网址。 Phil Haack解释说您需要一个wildcard mapping。
在Global.asax中,你可以尝试这样定义一个
routes.MapRoute("", "index.html", new { controller = "Home", action = "Index" });
一个规则,但恐怕与IIS 6,你必须处理Wild card mapping
。
我不确定我是否清楚地表达了我的问题。我不想将index.html的请求映射到控制器。我想将请求重定向到站点根目录index.html。 –
在回答中的评论后,我明白你的问题。尝试看这个答案http://stackoverflow.com/questions/1149750/using-asp-net-routing-to-serve-static-files/3112192#3112192 – Iridio
看起来像是发生了变化,我不得不这样做
routes.IgnoreRoute("");
ASP.NET抱怨路线开始“/”
确认:'路线。IgnoreRoute(“/”)'给出错误 - 此答案按预期工作。 – Matt
- 1. 如何获取SharePoint 2010网站的默认/欢迎页面?
- 2. 获取Orchard默认页面的网址
- 3. 如何在IIS/Windows 7上使用vbscript获取默认网站?
- 4. 如何获取默认的WAMP页面?
- 5. Clojure从网站获取html页面
- 6. 默认HTML页面?
- 7. 网站未启动默认页面
- 8. 手机网站默认页面
- 9. 无法在Azure网站上设置默认页面
- 10. 首次上传网站,如何制作默认网页?
- 11. 如何在网站上获取Facebook页面新闻提要
- 12. 如何从“默认”网站读取logExtFileFlags?
- 13. 如何将我网站的默认页面设置为index.html?
- 14. 如何通过htaccess设置默认网站页面?
- 15. 我如何更改网站定义默认欢迎页面
- 16. 如何设置ASP.NET网站的默认页面
- 17. 其中是mvc3中的默认页面?
- 18. 语言选择页面作为网站的默认页面
- 19. 如何在Visual Studio中为mvc3项目设置默认页面?
- 20. 如何获取html网页?
- 21. 如何获取网页的网站名称和页面标题
- 22. 默认网站页面错误 - 在子域上安装wordpress多站点
- 23. 如何在liferay中获取默认页面url?
- 24. 用户获取默认的Apache页面而不是网站 - Safari/FF?
- 25. 在Microsoft Windows Azure上为网站设置默认网页
- 26. 如何使用FormsAuthentication在默认页面上重定向页面?
- 27. 获取网站的所有页面,包括HTML,ASPX等在C#
- 28. 如何从powershell获取默认网关?
- 29. WordPress的多站点:新创建的网站的默认页面
- 30. 如何更改MVC3中的默认错误页面位置?
你看了菲尔哈克[博客文章(HTTP:/ /haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx)我已链接到[我的答案](http://stackoverflow.com/questions/7460870/how-to-get-a-default-html-page-on-mvc3-site/7460903#7460903)关于配置你的IIS 6.0以支持默认情况下IIS 6.0不支持的扩展名的URL。 –
是的,但我不确定它与我的问题完全相关。我只是想将请求重定向到站点根目录index.html。 Phil的帖子更多的是关于映射到控制器。我会回去再看看今晚。 –
如果你想在用户请求'http:// www.something.com /'时执行一些控制器动作,你肯定需要一个通配符映射,如Phil Haack所解释的。如果您想要提供静态HTML页面,那么只需将此HTML页面作为默认文档添加到IIS控制台中虚拟目录的属性中即可。 –