偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

淺析ASP.NET url重寫

開發(fā) 后端
本文介紹所謂的ASP.NET url重寫,就是在這一步。用.net的術(shù)語來說,我們需要給應(yīng)用程序注冊一個httpmodule,用來處理特定的url注冊httpmodule.

好久沒有寫技術(shù)文章,如果大家看不明白,就多看幾篇,汗,或者,在文章的后面回復(fù)(這是最有效的辦法),我會盡力幫助大家解答疑惑。

來找這篇文章的,應(yīng)該都知道什么叫二級域名吧,廢話就不說了。但是討論前,先要明白一個思想問題。很多朋友一直考慮不清(我前幾天也一直搞不明白)的問題是,我鍵入一個地址后,怎么這個就被ASP.NET url重寫了?

***步:在瀏覽器鍵入了一個地址,比如http://love.kerry.com,點回車后,都發(fā)生了什么?為了把問題簡單化,我來這樣解釋
第二步:首先,鍵入的地址被解析,最終來到了一臺web服務(wù)器。交給IIS處理。在ASP.NET的世界中,IIS會把這樣的請求再交給一個web處理器 處理,***,該 web處理器 把處理的結(jié)果返回給瀏覽器,顯示給用戶看。

請不用忽略這樣一個問題,第二步的所有事情都是在服務(wù)器端做的。在這些事情進(jìn)行的時候,用戶端的瀏覽器上面的地址不會改變。即使*** web處理器 把處理結(jié)果返回來的時候,上面的地址也不會改變。一開始鍵入的url,只是起一個敲門的作用,門敲完了,作用就算結(jié)束了,只有你的眼睛可以看到那個地址,瀏覽器,服務(wù)器等都不知道這個地址。然后要明白的問題是,所謂ASP.NET url重寫,也只是web開發(fā)人員知道的內(nèi)幕情況,用戶根本不知道發(fā)生了什么,他認(rèn)為自己鍵入的地址就是應(yīng)該出來屏幕上顯示的結(jié)果。也就是說,我們在幕后控制要顯示的內(nèi)容。接下來要考慮的是,怎么樣控制顯示的內(nèi)容?

從上面說的過程,很明顯要在 web處理器 的工作這一步動手腳。

一個最簡單的考慮是,用戶敲入了一個簡單的不帶任何參數(shù)地址, http://love.kerry.com然后我們把這個地址改成一個符合程序需要的帶參數(shù)的地址, http://kerry.com?lover=notus,***處理之。

所謂的ASP.NET url重寫,就是在這一步。用.net的術(shù)語來說,我們需要給應(yīng)用程序注冊一個httpmodule,用來處理特定的url注冊httpmodule,在web.config,處理url,在我們提供的httpmodule程序中大體相當(dāng)于這樣的一段程

  1. //用我們的httpmodule程序截獲原始url  
  2. String OriginalUrl=” http://love.kerry.com”;  
  3. //處理原始url,得到***需要的url,值為http://kerry.com?lover=notus 
  4. String FinalUrl=Rewrite(OriginalUrl);  
  5. // context重新將url在內(nèi)部發(fā)送給IIS處理  
  6. context.RewritePath(FinalUrl); 

接下來,我們來實現(xiàn)ASP.NET url重寫。
***步:確定要對哪些url執(zhí)行重寫,即制定重寫規(guī)則
第二步:編寫httpmodule處理程序
第三步:將編寫的httpmodule整合入web程序,開始工作。

上面就是ASP.NET url重寫的基本知識,而用ASP.NET url重寫實現(xiàn)二級域名,過程一樣。因為無論是二級域名還是三級域名,都是一個url地址。只要我們截獲這個url地址,就可以在處理的時候動手腳。

在實施過程中會碰到一些問題,大多是因為看上面的文章不仔細(xì)產(chǎn)生的,但是說實話,那么長的文章要看完也不容易。下面我來記錄一些重要的問題。其中***的兩個問題,用具體的代碼展示了如何處理重寫的目標(biāo)url以達(dá)到我們的要求

為什么非要用泛解析?
看了好多朋友的回復(fù),我想現(xiàn)在可能有這樣的誤解,即,這篇關(guān)于ASP.NET url重寫的文章只是給大家介紹一些處理方法。至于泛解析不泛解析,并不重要。

如果你不需要實現(xiàn)任意二級域名,那就用不著去實現(xiàn)泛解析,直接把你需要的二級域名定死,然后在ASP.NET url重寫里處理好了!再退一步,如果連二級域名都不用實現(xiàn),僅僅是對一個固定域名下的url進(jìn)行重寫,那都不需要修改msdn的那個urlrewriter,直接拿來用就可以實現(xiàn)了簡單的ASP.NET url重寫。 zyw對這個項目進(jìn)行的修改,只是為了取到全部的url進(jìn)行更大限度的控制。而如我們所見,一開始msdn的那個urlrewriter并不關(guān)心域名的問題,我一開始給文章起這樣的題目,是因為最近我項目里用到了,寫文檔的時候順便就把這個文章寫了

【編輯推薦】

  1. ASP.NET開發(fā)技巧之Theme功能淺析
  2. 詳解ASP.NET動態(tài)編譯
  3. Apache支持ASP.NET方法淺析
  4. 淺談ASP.NET服務(wù)器標(biāo)準(zhǔn)控件
  5. ASP.NET中SQL Server數(shù)據(jù)庫備份恢復(fù)淺析
責(zé)任編輯:佚名 來源: 51CTO.com
相關(guān)推薦

2009-07-31 09:39:59

ASP.NET和URL

2009-08-05 13:16:43

ASP.NET URL

2009-07-22 14:23:39

URL RewriteASP.NET

2009-12-30 14:28:09

ASP.NET Web

2009-07-31 12:43:59

ASP.NET MVC

2009-08-05 15:50:13

ASP.NET優(yōu)點

2009-07-24 13:41:15

ASP.NET AJA

2009-08-05 18:36:12

ASP.NET Che

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設(shè)計

2009-07-23 14:31:20

ASP.NET MVC

2009-07-28 16:40:11

ASP.NET異步頁面

2009-07-20 16:23:01

ASP.NET授權(quán)模塊

2009-07-27 10:18:12

TypeResolveASP.NET

2009-08-04 17:00:09

ASP.NET禁用Vi

2009-07-28 13:35:18

2009-07-28 15:53:43

ASP.NET Web

2009-09-24 09:26:22

ASP.NET MVC

2009-08-05 16:50:09

ASP.NET For

2009-08-03 10:07:20

ASP.NET Ses

2009-08-05 16:53:14

ASP.NET組件設(shè)計
點贊
收藏

51CTO技術(shù)棧公眾號