zoukankan      html  css  js  c++  java
  • Windows 7 中让IIS7支持shtml功能及在ASP.Net中使用UrlRewritingNet实现链接重写

    1、打开“控制面板”→“程序和功能”→“打开或关闭Windwos功能”。
    2、在打开的窗口中依次展开“Internet信息服务”→“万维网服务”→“应用程序开发功能”,选中“服务器端包含”选项,确定安装即可。

    SNAGHTML409cad

     

    在ASP.Net中使用UrlRewritingNet实现链接重写

    很多时候我们需要链接转向(Url Rewriting),例如二级域名转向、文章访问链接等场合。

    让我们看两个例子:
    1 你看到有些人的博客的域名如:
    http://dwfbenben.cnblogs.com实际上是 http://www.cnblogs.com/dwfbenben 的一种链接重写(Url Rewriting)。

    那么如何在Asp.net2.0中如何实现链接重写呢?(对于其他Framework是一样的)
    可以采用UrlRewritingNet.UrlRewriter.dll来轻松实现
    UrlRewritingNet.UrlRewriter.dll 可从其官方网站下载:http://www.urlrewriting.net
    我们要做的就是进行Web.Config文件的设置
    步骤一:设置之前需要添加引用:UrlRewritingNet.UrlRewriter.dll
    步骤二:<configSections>间添加:
    <configSections>
    <section name="urlrewritingnet" restartOnExternalChanges="true" requirePermission="false" type="UrlRewritingNet.Configuration.UrlRewriteSection, UrlRewritingNet.UrlRewriter"/>
    </configSections>

    步骤三: 添加httpModules
    <httpModules>
    <add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter"/>
    </httpModules>

    步骤四:添加链接重写的设置
    <urlrewritingnet rewriteOnlyVirtualUrls="true" contextItemsPrefix="QueryString" defaultPage="default.aspx" defaultProvider="RegEx" xmlns="http://www.urlrewriting.net/schemas/config/2006/07">
    <rewrites>
    <add name="Rewrite1" virtualUrl="^http\://(.*)/UrlRewritingTest/test.aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/default.aspx" rewrite="Domain" ignoreCase="true"/>
    <add name="Rewrite2" virtualUrl="^http\://(.*)/UrlRewritingTest/test1.aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/info.aspx?year=2007&amp;month=3&amp;day=9" rewrite="Domain" ignoreCase="true"/>

     <add name="RewriteOnDomain" virtualUrl="^http\://(.*)/SampleWeb/domain/(.*)/Detail(.*).aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Default.aspx?language=$3&amp;id=$4;&amp;domain=$1" rewrite="Domain" ignoreCase="true" />
    <add name="Rewrite" virtualUrl="^~/(.*)/Detail(.*).aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Default.aspx?language=$1&amp;id=$2" ignoreCase="true" />
    <add name="RedirectInApplication" virtualUrl="^~/(.*)/Default.aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/$1/Detail_Redirected.aspx" redirect="Application" redirectMode="Permanent" ignoreCase="true" />
    <add name="KickBrowserToDomain" virtualUrl="^http\://(.*)/SampleWeb/kickto/(.*).aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="http://$2?source=$1" redirect="Domain" redirectMode="Permanent" ignoreCase="true" />
    <add name="ding" virtualUrl="^~/(\d+).ding" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/default.aspx" redirect="Application" redirectMode="Permanent" ignoreCase="true" />
    </rewrites>
    </urlrewritingnet>

    步骤五:注意在处理程序映射里添加相应的脚本映射

    SNAGHTMLb40e74

  • 相关阅读:
    【MFC初学】
    【递归】【3月周赛1】【Problem B】
    不管ACM是不是屠龙之技
    【贪心+背包】【HDU2546】【饭卡】
    【精度问题】【HDU2899】Strange fuction
    【泛化物品】【HDU1712】【ACboy needs your help】
    【递推】【HDU2585】【hotel】
    【二进制拆分多重背包】【HDU1059】【Dividing】
    【水:最长公共子序列】【HDU1159】【Common Subsequence】
    【递推+矩阵快速幂】【HDU2604】【Queuing】
  • 原文地址:https://www.cnblogs.com/dwfbenben/p/2731775.html
Copyright © 2011-2022 走看看