zoukankan      html  css  js  c++  java
  • url重写

      前两天做项目的时候,有地方需要用到静态页面,然后就顺便研究了一下url重写,人理解,url重写就是修改了地址栏的显示,隐藏了真正的跳转。废话不说了,下面是我使用的两种方法

      1、在global.asax文件中添加一个void ApplicationBeginRequest(..)方法,在这个方法里面,修改跳转路径。代码如下 

      

        void Application_BeginRequest(object sender, EventArgs e)
          {
            string url = Request.RawUrl;//请求的原始页面
            Regex reg = new Regex(@"wangzhangonggao/(d+).html");
            Match match = reg.Match(url);
            if (match.Success)
              {
                string id = Regex.Match(url, @"d").Value;
                string strPath = "/wangzhangonggao/newsDetail.htm";
                HttpContext.Current.RewritePath(strPath);//跳转到真实的页面
              }
          }

        在web.config中要记住在<compilation>下添加<buildProviders>节点,说明文件格式的引用

    2、利用UrlRewriter

      这个应该是常用的了,最重要的就是web.confg的配置。

       

    <configSections>
    <section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter"/>

    </configSections>
    <RewriterConfig>
    <Rules>
    <RewriterRule>
    <LookFor>~/wangzhangonggao/(d+).html</LookFor>
    <SendTo>~/wangzhangonggao/newsDetail.htm</SendTo>
    </RewriterRule>
    </Rules>
    </RewriterConfig>
    <appSettings>
    <add key="ConnectionString" value="server=localhost;uid=sa;pwd=test;database=SLS_HZC"/>
    </appSettings>

    <system.web>
    <compilation debug="true" targetFramework="4.0">
    <buildProviders>
    <add extension=".htm" type="System.Web.Compilation.PageBuildProvider"/>
    <add extension=".html" type="System.Web.Compilation.PageBuildProvider"/>
    </buildProviders>
    </compilation>
    <httpHandlers>

    <!--这个地方的配置针对的是请求页面的,例如我请求wangzhangonggao/1.html,但实际上页面的内容是在另一个页面中。弄反了会报404的错误-->
    <add verb="*" path="wangzhangonggao/*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter"/>
    </httpHandlers>

  • 相关阅读:
    3.使用Unity 创建自己的android AR 项目 (小白篇)
    2.关于Unity -Vuforia -Android 开发 ,平台的搭建(极品菜鸟完整版) 续
    (番外篇) 高通 AR Unity 虚拟按钮 -源于 官网
    浅谈HTTP协议与RESTful
    深入浅出浮点型
    华杰简易入门系列之正则表达式——基础篇
    50行实现简易HTTP服务器
    Android中SD卡内容读取和简易FTP文件上传(番外)
    Android中谷歌语音识别应用探究
    Linux系统安装Nodejs(4.4.7)
  • 原文地址:https://www.cnblogs.com/li12fei12/p/4554714.html
Copyright © 2011-2022 走看看