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

首頁 > 學院 > 開發設計 > 正文

IIS URL重寫模塊和ASP.NET路由組件比較

2019-11-17 04:28:05
字體:
來源:轉載
供稿:網友

隨著針對IIS 7.0的URL重寫模塊的發布,以及在.NET框架3.5 SP1中包含了asp.net路由(Routing),許多ASP.NET開發人員開始質問這兩種特性彼此間的關系,以及應該何時使用。

Ruslan Yakushev在LearnIIS.NET上發表了一篇很有指導意義的文章。

二者本質的區別在于:IIS URL重寫的處理方式比ASP.NET路由在層次上更低,對于客戶端是不可見的。

Ruslan給出了IIS 7 URL重寫過程的可視化工作流。你可以看到URL重寫模塊是在請求被傳遞到請求處理器(Handler),例如ASP.NET管理的ASPX處理器之前被激活的。IIS URL重寫并不知道具體的請求處理器。

他同時還給出了ASP.NET路由過程的可視化工作流。可以看到ASP.NET路由就是一個請求分發器,它必須明確地獲知一個特定的請求究竟應途經哪個處理器。

來自Ruslan的描述如下:

URL重寫通常被用于在Web服務器處理請求之前操作URL路徑。URL重寫模塊并不知道處理器實際處理URL重寫的任何內容。此外,實際的請求處理器并不知道URL是否已被重寫。
ASP.NET路由通常根據請求的URL路徑將請求分發到處理器。與URL重寫相反,路由組件知道處理器,并能夠選擇可以為請求的URL生成反應的處理器。你可以將ASP.NET路由看作是一個高級的處理器映射機制。
IIS URL重寫模塊能夠用于任何類型的Web應用程序,包括ASP.NET,php,ASP和靜態文件。ASP.NET路由只能用于基于.NET框架的Web應用程序。
在用于應用程序池方面,不管是集成的還是經典的IIS管道模式,IIS URL重寫模塊的工作方式都是相同的。而ASP.NET路由則會優先選擇使用集成管道模式。ASP.NET路由也可以工作于經典模式,但是在這種情況下,應用程序的URL必須包含文件擴展名,或者應用程序必須在IIS中使用“*”配置處理器。
URL重寫模塊可以根據域名、HTTP標頭和服務器變量進行重寫判斷。默認情況下,ASP.NET路由只能使用URL路徑以及標頭的形式。
除了重寫功能,URL重寫模塊能夠執行HTTP重定向,確定自定義狀態碼以及取消請求。ASP.NET路由則不具有這些功能。
URL重寫模塊在當前版本中是不能擴展的。ASP.NET路由完全能夠擴展和定制。

查看英文原文:IIS URL Rewriting vs ASP.NET Routing


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 米泉市| 万安县| 石狮市| 余干县| 芦山县| 英超| 榆林市| 疏附县| 博兴县| 泰来县| 芷江| 新田县| 类乌齐县| 逊克县| 依安县| 南城县| 灵宝市| 金乡县| 闽清县| 黎城县| 南投县| 汝城县| 敖汉旗| 伊川县| 永善县| 衡水市| 鱼台县| 湖北省| 斗六市| 景宁| 黄浦区| 德州市| 东乌珠穆沁旗| 宁城县| 诸暨市| 双辽市| 西昌市| 赤城县| 漳浦县| 鄂伦春自治旗| 年辖:市辖区|