本文为【IIS URL重写模块和ASP.NET路由组件比较】的汉字拼音对照版显示拼音
随sui着zhe针zhen对duiIIS 7.0的deURL重chong写xie模mo块kuai的de发fa布bu,以yi及ji在zai.NET框kuang架jia3.5 SP1中zhong包bao含han了leASP.NET路lu由you(Routing),许xu多duoASP.NET开kai发fa人ren员yuan开kai始shi质zhi问wen这zhe两liang种zhong特te性xing彼bi此ci间jian的de关guan系xi,以yi及ji应ying该gai何he时shi使shi用yong。
Ruslan Yakushev在zaiLearnIIS.NET上shang发fa表biao了le一yi篇pian很hen有you指zhi导dao意yi义yi的de文wen章zhang。
二er者zhe本ben质zhi的de区qu别bie在zai于yu:IIS URL重chong写xie的de处chu理li方fang式shi比biASP.NET路lu由you在zai层ceng次ci上shang更geng低di,对dui于yu客ke户hu端duan是shi不bu可ke见jian的de。
Ruslan给gei出chu了leIIS 7 URL重chong写xie过guo程cheng的de可ke视shi化hua工gong作zuo流liu。你ni可ke以yi看kan到daoURL重chong写xie模mo块kuai是shi在zai请qing求qiu被bei传chuan递di到dao请qing求qiu处chu理li器qi(Handler),例li如ruASP.NET管guan理li的deASPX处chu理li器qi之zhi前qian被bei激ji活huo的de。IIS URL重chong写xie并bing不bu知zhi道dao具ju体ti的de请qing求qiu处chu理li器qi。
他ta同tong时shi还huan给gei出chu了leASP.NET路lu由you过guo程cheng的de可ke视shi化hua工gong作zuo流liu。可ke以yi看kan到daoASP.NET路lu由you就jiu是shi一yi个ge请qing求qiu分fen发fa器qi,它ta必bi须xu明ming确que地di获huo知zhi一yi个ge特te定ding的de请qing求qiu究jiu竟jing应ying途tu经jing哪na个ge处chu理li器qi。
来lai自ziRuslan的de描miao述shu如ru下xia:
URL重chong写xie通tong常chang被bei用yong于yu在zaiWeb服fu务wu器qi处chu理li请qing求qiu之zhi前qian操cao作zuoURL路lu径jing。URL重chong写xie模mo块kuai并bing不bu知zhi道dao处chu理li器qi实shi际ji处chu理liURL重chong写xie的de任ren何he内nei容rong。此ci外wai,实shi际ji的de请qing求qiu处chu理li器qi并bing不bu知zhi道daoURL是shi否fou已yi被bei重chong写xie。
ASP.NET路lu由you通tong常chang根gen据ju请qing求qiu的deURL路lu径jing将jiang请qing求qiu分fen发fa到dao处chu理li器qi。与yuURL重chong写xie相xiang反fan,路lu由you组zu件jian知zhi道dao处chu理li器qi,并bing能neng够gou选xuan择ze可ke以yi为wei请qing求qiu的deURL生sheng成cheng反fan应ying的de处chu理li器qi。你ni可ke以yi将jiangASP.NET路lu由you看kan作zuo是shi一yi个ge高gao级ji的de处chu理li器qi映yang射she机ji制zhi。
IIS URL重chong写xie模mo块kuai能neng够gou用yong于yu任ren何he类lei型xing的deWeb应ying用yong程cheng序xu,包bao括kuoASP.NET,PHP,ASP和he静jing态tai文wen件jian。ASP.NET路lu由you只zhi能neng用yong于yu基ji于yu.NET框kuang架jia的deWeb应ying用yong程cheng序xu。
在zai用yong于yu应ying用yong程cheng序xu池chi方fang面mian,不bu管guan是shi集ji成cheng的de还huan是shi经jing典dian的deIIS管guan道dao模mo式shi,IIS URL重chong写xie模mo块kuai的de工gong作zuo方fang式shi都dou是shi相xiang同tong的de。而erASP.NET路lu由you则ze会hui优you先xian选xuan择ze使shi用yong集ji成cheng管guan道dao模mo式shi。ASP.NET路lu由you也ye可ke以yi工gong作zuo于yu经jing典dian模mo式shi,但dan是shi在zai这zhe种zhong情qing况kuang下xia,应ying用yong程cheng序xu的deURL必bi须xu包bao含han文wen件jian扩kuo展zhan名ming,或huo者zhe应ying用yong程cheng序xu必bi须xu在zaiIIS中zhong使shi用yong“*”配pei置zhi处chu理li器qi。
URL重chong写xie模mo块kuai可ke以yi根gen据ju域yu名ming、HTTP标biao头tou和he服fu务wu器qi变bian量liang进jin行xing重chong写xie判pan断duan。默mo认ren情qing况kuang下xia,ASP.NET路lu由you只zhi能neng使shi用yongURL路lu径jing以yi及ji标biao头tou的de形xing式shi。
除chu了le重chong写xie功gong能neng,URL重chong写xie模mo块kuai能neng够gou执zhi行xingHTTP重chong定ding向xiang,确que定ding自zi定ding义yi状zhuang态tai码ma以yi及ji取qu消xiao请qing求qiu。ASP.NET路lu由you则ze不bu具ju有you这zhe些xie功gong能neng。
URL重chong写xie模mo块kuai在zai当dang前qian版ban本ben中zhong是shi不bu能neng扩kuo展zhan的de。ASP.NET路lu由you完wan全quan能neng够gou扩kuo展zhan和he定ding制zhi。
查cha看kan英ying文wen原yuan文wen:IIS URL Rewriting vs ASP.NET Routing
【原文】