MVC3/4伪静态 jexus mvc伪静态

第一步修改RouteConfig.cs文件

public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                "ActionHtml", // action伪静态  
                "{controller}/{action}.jsp/{id}",// 带有参数的 URL  
                new { controller = "home", action = "index", id = UrlParameter.Optional }// 参数默认值  
            );

            routes.MapRoute(
                "ControllerHtml", // controller伪静态  
                "{controller}.jsp/{action}/{id}",// 带有参数的 URL  
                new { controller = "home", action = "index", id = UrlParameter.Optional }// 参数默认值  
            );
            routes.MapRoute(
               "Root",
               "",
               new { controller = "home", action = "index", id = UrlParameter.Optional });//根目录匹配  

            routes.MapRoute(
               name: "Default",
               url: "{controller}/{action}/{id}",
               defaults: new { controller = "home", action = "index", id = UrlParameter.Optional }//默认配置
           );
        }

第二步修改web.config

IIS6

<system.web>
    <httpHandlers>
      <add name="html" verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
    </httpHandlers>
</system.web>

IIS7以上  jexus mvc伪静态也可以如此

<system.webServer>
    <handlers>
      <add name="html" verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
    </handlers>
  </system.webServer>

上面2步,我在iis7和jexus 就已经搞定了.jexus这边是linux需要注意大小写

配置IIS6据说还要

IIS配置:网站->属性 ->虚拟目录->配置(G)...->映射->通配符应用程序映射->添加
可执行文件:c:/windows/microsoft.net/framework/v2.0.50727 /aspnet_isapi.dll
扩展名为:.html
确认文件是否存在:不选.

配置IIS7.5(不一定用)

    你的网站-->IIS中处理程序映射-->

    添加脚本映射(路径:*.html 可执行文件%windir%/Microsoft.NET/Framework/v2.0.50727/aspnet_isapi.dll 名称:任意,比如Hml )

    添加通配符脚本映射(路径:* 可执行文件:C:/Windows/Microsoft.NET/Framework/v2.0.50727/aspnet_isapi.dll 名称:任意,比如All)

    托管处理程序映射(路径:* 可执行文件:System.Web.UI.PageHandlerFactory 名称 任意 比如Html-Integrate)-------->

    IIS中 模块-->添加---->(名称:任意 如All 类型:URLRewriter.ModuleRewriter 把 仅针对向asp.net 应用程序或托管处理程序发出请求调用 勾上 ok )

其他资料

经典模式:经典形式是为了与之前的版本兼容,运用ISAPI扩展来调用ASP.NET运转库,原先运转于IIS6.0下的Web应用程序迁移到IIS7.0中只需将应用程序配置成经典形式,代码根本不用修正就能够正常运转。太长了 只要记住一点,兼容(.net1.1/2.0/3.5) 用这个模式

集成模式:集成形式是一种统一的乞求处置管道,它将ASP.NET恳求管道与IIS中心管道组合在一同,这种形式可以提供更好的性能,可以完成配置和管理的模块化,而且增加了运用托管代码模块扩展IIS时的灵敏性。太长了,只要记住一点,.net4.0和4.5版本开发就用它,它的性能高还能重写!

posted @ 2015-12-04 20:32  寒殇  阅读(376)  评论(0编辑  收藏  举报