天天躁日日躁狠狠躁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)系我們修改或刪除,多謝。

主站蜘蛛池模板: 97人妻精品全国免费视频 | 亚洲三区视频 | 青柠在线观看免费完整版 | 妈妈的职业3完整版在线播放 | 玩弄朋友娇妻呻吟交换电影 | 麻豆精品传媒卡一卡二传媒短视频 | AV午夜午夜快憣免费观看 | 久久re视频这里精品青 | 麻豆最新免费版 | 久久这里的只有是精品23 | 日本日本熟妇中文在线视频 | 99久久国产综合精品网成人影院 | 久久日韩精品无码一区 | 妻子的妹妹在线 | 成人无码精品一区二区在线观看 | 灌饱娇嫩H将军公主最新章节 | 秋霞电影网视频一区二区三区 | 女人高潮久久久叫人喷水 | 男人把女人桶到高潮嗷嗷叫 | 久久综合视频网站 | 色婷婷狠狠97成为人免费 | 国产在线精彩视频 | 十分钟免费看完整视频 | 无码爽死成人777在线观看网站 | 久久强奷乱码老熟女 | 亚洲色大成网站WWW永久麻豆 | 日本高清色片 | 国产视频www | 制服国产欧美亚洲日韩 | 久久久中日AB精品综合 | 亚洲AV无码一区二区色情蜜芽 | 精品亚洲AV无码蜜芽麻豆 | 国产在线观看码高清视频 | 久久久久久91香蕉国产 | 伊人久久中文字幕久久cm | 好大好硬好爽好深好硬视频 | 精品国产乱码久久久久久口爆 | 小寡妇好紧进去了好大看视频 | 日本中文字幕伊人成中文字幕 | 亚洲精品色播一区二区 | 成人毛片大全 |