国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > .NET > 正文

asp.net下用url重寫(xiě)URLReWriter實(shí)現(xiàn)任意二級(jí)域名的方法

2024-07-10 13:14:27
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
摘要:
解釋了url重寫(xiě)的相關(guān)知識(shí).用asp.net實(shí)現(xiàn)二級(jí)域名重寫(xiě)的方法.對(duì)重寫(xiě)的一些問(wèn)題做了匯總解答.提供了幾段示例代碼.

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

來(lái)找這篇文章的,應(yīng)該都知道什么叫二級(jí)域名吧,廢話就不說(shuō)了.但是討論前,先要明白一個(gè)思想問(wèn)題.
很多朋友一直考慮不清(我前幾天也一直搞不明白)的問(wèn)題是,我鍵入一個(gè)地址后,怎么這個(gè)url就被重寫(xiě)了?
第一步:在瀏覽器鍵入了一個(gè)地址,比如http://love.kerry.com,點(diǎn)回車后,都發(fā)生了什么?
為了把問(wèn)題簡(jiǎn)單化,我來(lái)這樣解釋:
第二步:首先,鍵入的地址被解析,最終來(lái)到了一臺(tái)web服務(wù)器.交給IIS處理.在.net的世界中,IIS會(huì)把這樣的請(qǐng)求再交給一個(gè)web處理器 處理,最后,該 web處理器 把處理的結(jié)果返回給瀏覽器,顯示給用戶看.
請(qǐng)不用忽略這樣一個(gè)問(wèn)題,第二步的所有事情都是在服務(wù)器端做的.在這些事情進(jìn)行的時(shí)候,用戶端的瀏覽器上面的地址不會(huì)改變.即使最后 web處理器 把處理結(jié)果返回來(lái)的時(shí)候,上面的地址也不會(huì)改變.
一開(kāi)始鍵入的url,只是起一個(gè)敲門的作用,門敲完了,作用就算結(jié)束了,只有你的眼睛可以看到那個(gè)地址,瀏覽器,服務(wù)器等都不知道這個(gè)地址.
然后要明白的問(wèn)題是,所謂url重寫(xiě),也只是web開(kāi)發(fā)人員知道的內(nèi)幕情況,用戶根本不知道發(fā)生了什么,他認(rèn)為自己鍵入的地址就是應(yīng)該出來(lái)屏幕上顯示的結(jié)果.也就是說(shuō),我們?cè)谀缓罂刂埔@示的內(nèi)容.
接下來(lái)要考慮的是,怎么樣控制顯示的內(nèi)容?
從上面說(shuō)的過(guò)程,很明顯要在 web處理器 的工作這一步動(dòng)手腳.

一個(gè)最簡(jiǎn)單的考慮是,用戶敲入了一個(gè)簡(jiǎn)單的不帶任何參數(shù)地址, http://love.kerry.com然后我們把這個(gè)地址改成一個(gè)符合程序需要的帶參數(shù)的地址, http://kerry.com?lover=notus,最后處理之.
所謂的url重寫(xiě),就是在這一步.
用.net的術(shù)語(yǔ)來(lái)說(shuō),我們需要給應(yīng)用程序注冊(cè)一個(gè)httpmodule,用來(lái)處理特定的url
注冊(cè)httpmodule,在web.config,
處理url,在我們提供的httpmodule程序中

大體相當(dāng)于這樣的一段程序

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

接下來(lái),我們來(lái)實(shí)現(xiàn)url重寫(xiě).
第一步:確定要對(duì)哪些url執(zhí)行重寫(xiě),即制定重寫(xiě)規(guī)則
第二步:編寫(xiě)httpmodule處理程序
第三步:將編寫(xiě)的httpmodule整合入web程序,開(kāi)始工作.

上面就是url重寫(xiě)的基本知識(shí),而用url重寫(xiě)實(shí)現(xiàn)二級(jí)域名,過(guò)程一樣.因?yàn)闊o(wú)論是二級(jí)域名還是三級(jí)域名,都是一個(gè)url地址.只要我們截獲這個(gè)url地址,就可以在處理的時(shí)候動(dòng)手腳.

這些工作挺麻煩,但是網(wǎng)絡(luò)上已經(jīng)有高人給我們寫(xiě)了這樣的程序,參看下面的文章:

http://www.microsoft.com/china/m ... t/URLRewriting.mspx

http://www.cnblogs.com/jzywh/archive/2005/09/29/246650.html

http://www.cnblogs.com/jzywh/archive/2006/02/20/334004.html
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 宝丰县| 洪湖市| 黄龙县| 太仆寺旗| 雷山县| 滨州市| 横山县| 仁寿县| 神木县| 乌什县| 玉田县| 小金县| 南华县| 上思县| 龙里县| 保靖县| 洛宁县| 泸水县| 新余市| 沙湾县| 武义县| 乐安县| 陕西省| 曲阳县| 兰西县| 宁津县| 宜春市| 汝阳县| 定州市| 镇沅| 兴文县| 三门县| 佳木斯市| 唐海县| 西平县| 贡嘎县| 观塘区| 嫩江县| 嫩江县| 嫩江县| 黄骅市|