天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

ASP.NET URL雙向改寫的實現(xiàn)

  我們在進行Web程序開發(fā)時,為了進行搜索引擎優(yōu)化(SEO),往往需要對web的訪問地址進行優(yōu)化,如將http://localhost/Default.ASPx?tab=performance修改為http://localhost/Default_performance.ASPx,后一個地址能夠更好地被搜索引擎搜索到,從而達到了搜索引擎優(yōu)化的目的。微軟有一個開源類庫URLRewriter可以非常方便地實現(xiàn)url改寫,通過配置在web.config文件中的映射表將用戶的請求重定向到具體的頁面中,我在“使用URLRewriter進行URL重寫失效”一文中詳細介紹了如何使用這個類庫,該類庫是通過ASP.NET的httpmodules或httphandles來執(zhí)行的,但如果網(wǎng)站的宿主服務(wù)器不支持ASP.NET httpmodules和httphandles,則該功能便失效了,這時我們可以通過global中的application_beginrequest事件來進行url重定向。本文在URLRewriter類庫的基礎(chǔ)上進行了改進,并給出了一個相對完整的解決方案。

  我們的改進是建立在URLRewriter的基礎(chǔ)之上的,所以URLRewriter原有的東西只要能用,我們都可以直接拿過來,當然,不好的東西要摒棄!

  URLRewriter的映射表是直接寫在web.config文件中的,要讓web.config能識別映射表,必須在configSections節(jié)中添加section,告訴程序如何正確解析web.config中未被識別的內(nèi)容,如原URLRewriter就需要在web.config中添加。我覺得這個方式并不好,首先你需要單獨去編寫一個類庫來解析xml,并在web.config中進行配置,我們完全可以省去這一步。url的映射表可以單獨寫到一個xml文件中,當程序運行時將xml加載到應(yīng)用程序緩存中,并設(shè)置一個緩存文件依賴項,這樣每當管理員修改完映射表后就可以馬上生效。

  另外我希望支持url的雙向改寫,即上面提到的兩個url,當用戶輸入第二個url時程序會將請求發(fā)送到第一個url,但瀏覽器中顯示的url不變;當用戶輸入第一個url時,自動跳轉(zhuǎn)到第二個url,此時瀏覽器中顯示的是第二個url,但是請求仍然是第一個url。聽起來是不是有點繞啊?沒關(guān)系,其實也很簡單,基本的需求就是說客戶原來網(wǎng)站中的很多頁面在訪問時都帶了很多參數(shù),做url改寫時都換成新的url了,這時舊的url仍然可以用,客戶想的就是當輸入原來舊的url時能自動跳轉(zhuǎn)到新的url。這個就是url的雙向改寫!這兩種方式可以分別通過Context.RewritePath()和Context.Response.Redirect()方法來實現(xiàn),下面我們來看具體的實現(xiàn)。

  首先是映射表的實現(xiàn)。我在URLRewriter原有映射表的基礎(chǔ)上做了一點改動,就是給ReWriterRule添加了一個IsDirect屬性,該屬性可選,默認值為False,當值為真時如果用戶請求的url匹配則會進行跳轉(zhuǎn),否則只是進行請求映射。 

xml version="1.0"?>
<ReWriterConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  
<Rules>
    
<ReWriterRule>
      
<LookFor>~/Default_(/w+)/.ASPxLookFor>
      
<SendTo>~/Default.ASPx?tab=$1SendTo>
    
ReWriterRule>
    
<ReWriterRule IsDirect="true">
      
<LookFor>~/Default/.ASPx/?tab=(/w+)LookFor>
      
<SendTo>~/Default_$1.ASPxSendTo>
    
ReWriterRule>
  
Rules>
ReWriterConfig>

NET技術(shù)ASP.NET URL雙向改寫的實現(xiàn),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 俄罗斯美女性生活 | 男子扒开美女尿口做羞羞的事 | 日韩欧美亚洲精品综合在线 | 在线视频免费国产成人 | 好男人好资源视频高清 | 欧美zozofoot | 最新快播网站 | 亚洲精品AV一二三区无码 | 国产成人啪精视频精东传媒网站 | 亚洲精品国产自在在线观看 | 伊人久久影院大香线蕉 | GOGOGO高清在线播放韩国 | 永久精品免费影院在线观看网站 | 日韩在线av免费视久久 | 国产精品女上位在线观看 | 日本无码毛片久久久九色综合 | 天天久久狠狠色综合 | 亚洲裸舞 hd | 免费成年人在线观看视频 | 色宅男看片午夜大片免费看 | 丝袜美腿美女被狂躁在线观看 | 亚洲国产日韩欧美高清片a 亚洲国产日韩a精品乱码 | 和搜子的日子 在线观看 | 久草网国产自偷拍 | 北岛玲手机在线观看视频观看 | 强开少妇嫩苞又嫩又紧九色 | 久久久高清国产999尤物 | 一区二区三区高清视频 | 恋夜影院支持安卓视频美女 | 免费特黄一区二区三区视频一 | 茎身铃口调教 | 国内外成人免费在线视频 | 国产久久精品热99看 | 91羞羞视频| 国产成人高清在线观看播放 | 3DNagoonimation动漫 | 青青青青久久久久国产的 | 久久精品中文字幕有码日本 | 国产精品色欲AV亚洲三区软件 | 男欢女爱免费视频 | 古代荡乳尤物H妓女调教 |