ASP.NET MVC在IIS6上
在哪里可以找到一些关于在IIS6上运行ASP.NET MVC的最佳实践的好指标?
我还没有看到任何提供IIS7托管的网站主机的现实选择。主要是因为我不住在美国。 所以我想知道如何你最好在ASP.NET MVC中构建应用程序,并使其易于可用于部署在IIS6和IIS7。请记住,这是标准的web主机,所以没有访问ISAPI过滤器或IIS6内的特殊设置。 在开发ASP.NET MVC应用程序以定位IIS6时,有没有其他人应该考虑?任何不工作的功能? 更新:一个更大的问题是路由的东西。模式{controller} / {action}将在IIS7上工作,而不是IIS6,它需要{controller} .mvc / {action}。那么如何让这个透明?再次,没有ISAPI和没有IIS设置,请。 解决方法
它花了我一点,但我想出了如何使扩展与IIS 6工作。首先,您需要重做基本路由以包括.aspx,以便他们将路由通过ASP.NET ISAPI过滤器。
routes.MapRoute( "Default",// Route name "{controller}.aspx/{action}/{id}",// URL with parameters new { controller = "Home",action = "Index",id = "" } // Parameter defaults ); 例如,如果您导航到Home.aspx,您的网站应该工作正常。但Default.aspx和默认页面地址http://[website]/停止工作正常。那么如何解决呢? 那么,你需要定义第二条路线。不幸的是,使用Default.aspx作为路由不能正常工作: routes.MapRoute( "Default2",// Route name "Default.aspx",id = "" } // Parameter defaults ); 那么如何让这个工作?那么,这是你需要原始的路由代码: routes.MapRoute( "Default2",// Route name "{controller}/{action}/{id}",id = "" } // Parameter defaults ); 当你这样做,Default.aspx和http://[website]/都开始工作,我想,因为他们成功映射回家控制器。所以完整的解决方案是: public class MvcApplication : System.Web.HttpApplication { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default",// Route name "{controller}.aspx/{action}/{id}",// URL with parameters new { controller = "Home",id = "" } // Parameter defaults ); routes.MapRoute( "Default2",// Route name "{controller}/{action}/{id}",id = "" } // Parameter defaults ); } protected void Application_Start() { RegisterRoutes(RouteTable.Routes); } } 和你的网站应该开始工作正常在IIS 6(至少它在我的电脑。 并且作为奖励,如果你在你的页面中使用Html.ActionLink(),你不应该改变整个网站的任何其他代码行。此方法负责在控制器的.aspx扩展名上正确标记。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何将asp.net的后台cs代码移动到页面上
- ASP.NET MVC教程一:ASP.NET MVC简介
- asp.net-mvc – 使用ViewData或不使用ViewData
- asp.net – 空白WebResource.axd
- ASP.NET 4 URL路由Web表单打破了我对样式,脚本,图像等的相对
- ASP.NET随机丢失会话值
- asp.net-mvc – 在ASP.NET MVC中动态更改主模板
- asp.net – 会话状态超时与空闲超时
- asp.net-mvc – 如何在ASP.NET MVC上为GET和POST操作绑定Di
- asp.net-mvc-2 – 带有JavaScript变量的ASP.NET MVC 2 Html
- 在ASP.NET动态数据中隐藏列
- asp.net-mvc – 动态URL路由ASP MVC
- 会话的最大长度是什么ASP.net 4.0会话ID – 存储
- asp.net – Web Api 2 – 返回NotFound(); vs使用
- asp.net – 在部署到SharePoint时,ObjectDataSou
- asp.net – 在本地主机上开发Facebook Connect J
- asp.net-mvc – 可以在ASP.NET MVC中本地化URL /
- asp.net-mvc – 我们可以从现有数据库的选定表中
- asp.net-mvc – ASP.NET WEB API将DateTime作为U
- asp.net-mvc – 多个MVC项目结构