国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      由單組因特網主控機器提供的多個并行用戶體驗的制作方法

      文檔序號:6595110閱讀:189來源:國知局
      專利名稱:由單組因特網主控機器提供的多個并行用戶體驗的制作方法
      由單組因特網主控機器提供的多個并行用戶體驗背景web應用程序是在諸如因特網或內聯網等的網絡上經由web瀏覽器可訪問的應用程序。Web應用程序是現今的企業(yè)界中的必要工具。例如,銷售人員可以在她的個人計算機上使用她的web瀏覽器來訪問由她的公司提供的web應用程序,以便將銷售情況輸入到銷售數據庫。在另一示例中,大學生可以在他的個人計算機上使用web瀏覽器來訪問由他的大學提供的web應用程序,以便注冊課程。在許多環(huán)境中,web應用程序提供者可能希望將web應用程序的不同版本提供給不同的用戶組。例如,具有跨國銷售力量的公司可能希望將銷售條目web應用程序的第一版本提供給其歐洲的銷售人員并將該銷售條目web應用程序的第二版本提供給其北美的銷售人員。在此示例中,該web應用程序的不同版本可以收集不同的數據以便遵守不同的規(guī)則。在另一示例中,web應用程序提供者可能希望將web應用程序的已更新版本提供給一組β用戶(beta user),同時繼續(xù)將該web應用程序的當前版本提供給大眾。為了實現web應用程序的不同版本,web應用程序提供者可能需要實現諸如軟件模塊、圖像、視頻等等的等效資源的不同版本。此外,因為web應用程序提供者可能需要實現等效的軟件模塊的不同版本,該web應用程序提供者可能需要在不同的物理主控 (hosting)設備組上安裝該等效的軟件模塊的不同版本。例如,web應用程序提供者可能需要在第一組物理主控設備上安裝該web應用程序的第一版本所需要的軟件模塊,并且可能需要在第二組物理主控設備上安裝該web應用程序的第二版本所需要的軟件模塊。web應用程序提供者可能需要在不同的物理主控設備組上安裝該等效的軟件模塊的不同版本,這是因為與該web應用程序的不同版本相關聯的等效資源可能具有相同的文件名且因此不能被存儲在文件系統目錄結構內的相同位置。概述提供本公開內容以便以簡化形式介紹下面在詳細描述中進一步描述的概念的選集。本公開內容不旨在標識該所要求保護的本主題的關鍵特征或必要特征,也不旨在用來限制所要求保護的本主題的范圍。本公開內容描述使用單個主控設備來提供單個web應用程序的多個版本的技術。 如下面詳細描述,主控設備將與web應用程序的不同版本相關聯的資源存儲在不同的目錄中。當主控設備從客戶機設備接收與web應用程序相關聯的請求時,該主控設備自動地將 web應用程序的各版本中的一個版本標識為web應用程序的適用版本。主控設備將該請求中的路徑名重寫成包括存儲web應用程序的適用版本的子目錄的子目錄名稱。然后,主控設備解除引用(dereference)由所重寫的路徑名標識的資源。以此方式,主控設備使用web 應用程序的適用版本的資源來處理該請求。附圖簡述

      圖1是闡釋包括實現本公開內容的技術的主控設備的示例系統的框圖。圖2是闡釋該主控設備的各示例邏輯組件的框圖。圖3是闡釋該主控設備的各邏輯組件的示例操作的流程圖。
      圖4闡釋示例目錄結構。圖5是闡釋該主控設備的各示例硬件組件的框圖。詳細描述一般地,本公開內容描述使用單個主控設備來提供單個web應用程序的多個版本的技術。該web應用程序的各版本中的每一版本可以提供不同的用戶體驗。在下列描述中, 描述各種示例。應明白,出于解釋的目的且不作為關于權利要求的范圍的明確的或暗示的限制而提供這些示例。圖1是闡釋示例系統2的框圖。如在圖1的示例中所闡釋的,系統2包括主控web 應用程序的多個版本的主控設備4。在一些實例中,主控設備4是可以被分成多個分離的物理單元的物理電子計算設備。在這些實例中,這些物理單元可以使用包括總線技術、互連技術、網絡技術和其他通信技術在內的各種通信技術相互通信。例如,主控設備4可以是單個單機服務器設備、服務器設備的集群、服務器刀片或另一類型的物理電子計算設備。本公開內容中所使用的術語“web應用程序”是指在諸如因特網或內聯網等的網絡上經由web瀏覽器訪問的應用程序。主控設備4可以主控多種不同類型的web應用程序。 例如,主控設備4可以主控業(yè)務流程web應用程序、電子郵件web應用程序、電子日歷web 應用程序、電子協作web應用程序和其他類型的web應用程序。在一個具體的示例中,主控設備4基于微軟Office Live Workspace (辦公實況工作空間)協作應用程序工具主控web 應用程序的多個版本。主控設備4包括存儲分層目錄系統的計算機可讀存儲介質。該目錄結構含有一組子目錄。各子目錄中的每一子目錄都與一子目錄名稱相關聯。例如,第一子目錄可以與子目錄名稱“rOOt/version_2008_01/(根/版本_2008_01/)”相關聯,且第二子目錄可以與子目錄名稱 “root/version_2008_02/ (根 / 版本 _2008_02/) ” 相關聯。被存儲在該組目錄的每一子目錄內的是與相同的web應用程序的不同版本相關聯的不同的資源組。除非另外說明,被存儲在該目錄系統的第一子目錄內的是與該web應用程序的第一版本相關聯的第一組資源,且被存儲在該目錄系統的第二子目錄內的是與該 web應用程序的第二版本相關聯的第二組資源,以此類推。各子目錄中的每一子目錄中的資源可以多種不同類型的資源。例如,各子目錄中的第一個中的資源可以包括圖像文件、音頻文件、視頻文件、超文本標記語言(HTML)文件、 Jav必cript腳本、VBkript腳本、可擴展標記語言(XML)文檔、動態(tài)鏈接庫(DLL)文件、 ASP. NET頁面、級聯樣式表文件、配置文件、Java小程序(Applet)、ActiveX對象、通用網關接口(CGI)腳本、PHP腳本和其他類型的資源。web應用程序的每一版本被設計成為web應用程序提供不同的用戶體驗。除非另外說明,該web應用程序的第一版本被設計成提供第一用戶體驗,該web應用程序的第二版本被設計成提供第二用戶體驗,以此類推。由該web應用程序的不同版本提供的用戶體驗可以在許多方面不同。例如,該web應用程序的不同的用戶體驗可以提供不同的功能性、不同的外觀、不同的用戶界面和其他不同的特征。在一個特定的示例中,銷售條目web應用程序(sales-entry web application)的第一用戶體驗可以要求用戶在將銷售數據輸入到由該web應用程序的第一版本提供的web頁面時輸入特定的數據,且由該銷售條目web應用程序的第二版本提供的第二用戶體驗可以不要求該用戶在將銷售數據輸入到由該web應用程序的第二版本提供的等效web頁面時輸入該特定的數據。系統2還包括客戶機設備6??蛻魴C設備6可以是多種不同類型的電子計算設備。 例如,客戶機設備6可以是個人計算機、移動電話、個人媒體播放器、網絡設備、中間網絡設備、大型計算機、集成到車輛的設備、膝上型計算機、電視機頂盒、手持式計算設備或另一類型的計算設備。另外,系統2包括網絡8。網絡8是促進在客戶機設備6和主控設備4之間的通信的電子通信網絡。網絡8可以是多種不同類型的電子通信網絡。例如,網絡8可以是因特網、內聯網、局域網、廣域網、個域網、自組織網絡或另一類型的網絡。此外,網絡8可以包括無線和或有線的通信鏈路??梢栽诰W絡8內的鏈路上使用各種通信協議,包括例如以太網、 WiFi、WiMax、藍牙、碼分多址接入(CDMA)和其他通信協議??蛻魴C設備6包括瀏覽器10。瀏覽器10是在客戶機設備6上執(zhí)行因特網瀏覽應用程序。例如,瀏覽器10可以是微軟INTERNET EXPLORER 因特網瀏覽器、Mozilla Firefox因特網瀏覽器、谷歌Chrome因特網瀏覽器、蘋果Mfari因特網瀏覽器、Opera因特網瀏覽器、黑莓因特網瀏覽器或另一類型的因特網瀏覽器的實例??蛻魴C設備6的用戶12可以使用瀏覽器10來與由主控設備4主控的web應用程序交互。為了發(fā)起與由主控設備4主控的web應用程序的交互,瀏覽器10經由網絡8 將與web應用程序相關聯的請求發(fā)送給主控設備4。例如,用戶12可以將統一資源定位符(URL)輸入到由瀏覽器10生成的用戶界面的地址欄。在此示例中,該URL指定與主控設備4相關聯的主機名稱和與該web應用程序相關聯的路徑名。舉例來說,該用戶可以將 URL"http://www. example. com/myffebApp/origin. aspx,,輸入到由瀏覽器 10 生成的用戶界面的地址欄。在此實例中,該URL的域名部分是“www. example, com”且路徑名是“myWebApp/ origin, aspx”。此外,在此示例中,瀏覽器10可以響應于該URL的輸入而生成超文本傳輸協議(HTTP)請求消息,并經由網絡8將其發(fā)送給主控設備4。在此示例中,該HTTP請求消息可以指定與主控設備4相關聯的主機名稱和與web應用程序相關聯的路徑名。舉例來說,如果用戶將 URL "http://www. example. com/myffebApp/origin. aspx,,輸入到由瀏覽器 10生成的用戶界面的地址欄,則瀏覽器10可以生成并發(fā)送下列HTTP請求消息GET/myffebApp/origin. aspx HTTP/1. 1Host:www. example, com響應于該請求,主控設備4自動地從該web應用程序的一組版本標識該web應用程序的適用版本。如下面所描述,主控設備4可以以各種方式自動地標識該web應用程序的適用版本。例如,當客戶機設備6的用戶已經將瀏覽器10設置成使用德語時,主控設備 4可以自動地將該web應用程序的第一版本標識成適用版本,并且,當客戶機設備6的用戶已經將瀏覽器10設置成使用俄語時,可以自動地將該web應用程序的第二版本標識成適用版本。在標識該web應用程序的適用版本之后,主控設備4重寫該請求,使得該請求中的路徑名包括含有與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱。例如,含有與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱可以是“root/ version_2008_02/,,,且初始的HTTP請求可以是如下GET/myffebApp/origin. aspx HTTP/1. 1
      Host:www. example, com在此示例中,主控設備4可以重寫此請求,得到下列HTTP請求GET/root/version_2008_02/myffebApp/origin. aspx HTTP/1. 1Host:www. example, com在主控設備4重寫該請求之后,主控設備4解除引用由所重寫的請求指定的路徑名標識的資源。本公開內容中所使用的短語“解除引用”意指獲取由引用標識符標識的資源。解除引用資源可以像檢索被存儲在計算機可讀存儲介質上的資源那樣簡單。在另一實例中,解除引用可以要求執(zhí)行一個或多個腳本或程序集以便獲取該資源。因為主控設備4將該請求中的路徑名重寫成包括存儲與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱,且因為該web應用程序的適用版本可以因請求不同而不同,當主控設備4接收指定相同的路徑名的兩個請求時,主控設備4可以解除引用兩個不同的資源。舉例來說,第一用戶可以將URL“http //www. example. com/root/myffebApp/ origin, aspx”輸入到第一用戶的瀏覽器的地址欄,且第二用戶可以將相同的URL輸入到第二用戶的瀏覽器的該地址欄。一接收到這兩個所得到的請求,主控設備4就可以解除引用兩個不同的資源,這是因為第一用戶和第二用戶可以具有該web應用程序的不同的適用版本。在主控設備4解除引用由所重寫的請求指定的路徑名標識的資源之后,主控設備 4可以將該資源發(fā)送給客戶機設備6。例如,主控設備4可以發(fā)送包括一個或多個首部字段和含有該資源的正文的HTTP響應。在此示例中,該HTTP響應可以被分成多個數據包,以供在網絡8上傳送。圖2是闡釋主控設備4的各示例邏輯組件的框圖。如在圖2的示例中所闡釋的,主控設備4包括表示用于組織各文件的目錄的分層結構的目錄結構30??梢允褂酶鞣N文件系統體系結構來實現目錄結構30,包括但不限于FAT32、NTFS、HPFS、Google File System(谷歌文件系統^Hierarchical File System Plus (擴展分層式文件系統,HFS+)或另一類型的文件系統。目錄結構30包括子目錄32A和子目錄32B。子目錄32A不是子目錄32B的子孫目錄或祖先目錄。然而,子目錄32A和子目錄32B可以是單個直接父目錄的孩子目錄。 子目錄32A和子目錄32B與各子目錄名稱相關聯。例如,子目錄32A可以與子目錄名稱 “version_2008_01”相關聯,且子目錄32B可以與子目錄名稱“version_2008_02”相關聯。 盡管在圖2的示例中未示出,但子目錄32A和子目錄32B可以包括一個或多個孩子目錄,這些一個或多個孩子目錄又可以包括一個或多個子孫目錄,以此類推。在各實例中,當子目錄 32A和子目錄32B包括子孫子目錄時,子目錄32A的各子孫子目錄和子目錄32B的各子孫子目錄可以具有相同的結構。子目錄32A存儲與web應用程序的第一版本相關聯的一組資源34A。子目錄32B存儲與web應用程序的第二版本相關聯的一組資源34B。如上面所討論,資源34A和資源34B 可以是多種不同類型的資源,包括但不限于DLL、腳本、圖像文件、視頻文件、音頻文件等等。 盡管在圖2的示例中未示出,但目錄結構30可以含有另外的子目錄,這些另外的子目錄含有與該web應用程序的另外的版本相關聯的資源。在一些實例中,資源34A中的一個資源可以具有與資源34B中的一個資源相同的文件名,但是可以不同地操作。例如,資源34A可以包括被命名為“salesEntry. dll”的文件,且資源34B可以包括被命名為“saleEntry. dll”的文件。被命名為“saleEntry. dll” 的這兩個文件可以提供不同的功能。在其他實例中,資源34A中的每一資源可以對應于資源34B中的被同等地命名的資源。在圖2的示例中,主控設備4包括存儲將該web應用程序的各版本與用戶組關聯起來的信息的組數據庫36。舉例來說,組數據庫36可以存儲一組規(guī)則,該組規(guī)則中的每一規(guī)則指定前置條件和web應用程序的一個版本。在此實例中,當由規(guī)則所指定的前置條件為真時,判斷該web應用程序的該版本是該web應用程序的適用版本。組數據庫36可以存儲基于多種前置條件的多個規(guī)則,這些前置條件中的一些可以依賴于或不依賴于由主控設備4所接收的請求的內容。在第一示例中,HTTP請求可以含有指定用于HTTP響應的一個或多個可接受的語言的“接受-語言”首部。在此第一示例中,組數據庫36可以包括當HTTP請求含有指定 “德語”的“接受-語言”首部時規(guī)定web應用程序的適用版本是該web應用程序的第一版本的規(guī)則。在此第一示例中,組數據庫36還可以包括當HTTP請求含有指定“英語”的“接受-語言”首部時規(guī)定web應用程序的適用版本是該web應用程序的第二版本的規(guī)則。在此第一示例中,該web應用程序的第一版本和第二版本可以提供不僅僅是相同用戶體驗的翻譯的不同的用戶體驗。在第二示例中,HTTP請求可以含有指定用戶代理的用戶代理串“用戶-代理” 首部。在此實例中,組數據庫36可以包括當該HTTP請求含有指定用戶代理是Mozilla Firefox因特網瀏覽器的“用戶-代理”首部時規(guī)定web應用程序的適用版本是該web應用程序的第一版本的規(guī)則。在此實例中,組數據庫36還可以包括當該HTTP請求含有指定用戶代理是hternet Explorer因特網瀏覽器的“用戶-代理”首部時規(guī)定web應用程序的適用版本是該web應用程序的第二版本的規(guī)則。在第三示例中,可以要求各用戶登入到主控設備4以便訪問該web應用程序。在此第三示例中,組數據庫36可以包括指定各用戶中的每一用戶的喜好的喜好數據。舉例來說,第一用戶可以優(yōu)選使用該web應用程序的第一版本,且第二用戶可以優(yōu)選使用該web應用程序的第二版本。在一些環(huán)境中,組數據庫36中的一個規(guī)則可以規(guī)定一用戶的web應用程序的適用版本是該web應用程序的第一版本,但是用戶的喜好可以指示該用戶優(yōu)選使用該web應用程序的第二版本。在這些環(huán)境中,用戶的喜好可以具有更高的重要性。因而,該用戶可以有效地選擇拒絕使用該web應用程序的第一版本而贊成使用該web應用程序的第二版本,或者可以在使用該web應用程序的第一版本和該web應用程序的第二版本之間切換。當web應用程序提供者正在推出具有新的用戶界面的web應用程序的一個版本,而許多用戶喜歡當前的用戶界面時,這些環(huán)境可以頻繁地出現??梢猿鲇诟鞣N目的而結構化組數據庫36中的各規(guī)則。在第一示例中,web應用程序的新版本可以準備好在第一地理區(qū)域中使用,但是未準備好在第二地理區(qū)域中使用。在此第一示例中,組數據庫36中的各規(guī)則可以被結構化成使得第一地理區(qū)域中的各用戶可以使用web應用程序的新版本,而第二地理區(qū)域中的各用戶繼續(xù)使用該web應用程序的現有版本。這可以允許web應用程序的提供者快速地在第一地理區(qū)域中將該web應用程序的新版本推向市場,而不必等待世界性的推出。在第二示例中,提供者可能正在對web應用程序的新版本執(zhí)行β測試,同時繼續(xù)提供該web應用程序的現有版本。在此第二示例中,組數據庫36中的各規(guī)則可以被結構化成使得志愿成為β測試員的用戶可以與該web應用程序的新版本交互,同時其他用戶可以繼續(xù)與該web應用程序的現有版本交互。盡管這些示例討論了 web應用程序的舊版本和新版本,但該web應用程序的各版本不需要具有這樣的關系。主控設備4還包括版本模塊38。版本模塊38接收與web應用程序相關聯的請求。 響應于接收到該請求,版本模塊38自動地標識該web應用程序的適用版本。在圖2的示例中,版本模塊38使用組數據庫36中的信息來標識與客戶機設備6的用戶相關聯的web應用程序的一個版本。舉例來說,如果組數據庫36使用規(guī)定該web應用程序的適用版本的一組規(guī)則,則版本模塊38可以通過自動地將各規(guī)則應用到該請求來自動地標識該web應用程序的適用版本。在版本模塊38自動地標識該web應用程序的適用版本之后,主控設備4中的請求重寫模塊40可以重寫該請求,使得該請求中所包括的路徑名包括存儲與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱。例如,如果與該web應用程序的適用版本相關聯的資源被存儲在子目錄32A中,則請求重寫模塊40可以重寫該請求,使得由該請求指定的路徑名包括與子目錄32A相關聯的子目錄名稱。在請求重寫模塊40重寫該請求之后,請求處理器模塊42解除引用由所重寫的請求指定的路徑名標識的資源。因為由所重寫的請求指定的路徑名包括存儲與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱,請求處理器模塊42訪問存儲與該web 應用程序的適用版本相關聯的資源的子目錄中的資源,而不是訪問存儲與該web應用程序的不同版本相關聯的資源的子目錄中的資源。例如,如果由所重寫的請求指定的路徑名包括與子目錄32A相關聯的子目錄名稱,則請求處理器模塊42解除引用子目錄32A中的資源,而不是子目錄32B中的被同等地命名的資源。如在圖2的示例中所闡釋的,主控設備4還可以包括全局程序集緩存(GAC)44。GAC 44是用于.NET程序集的機器范圍的儲存庫。每一程序集是以公共中間語言(CIL)格式化的代碼庫。各程序集可以是進程程序集或庫程序集。進程程序集表示使用在庫程序集中定義的類的進程。主控設備4可以將GAC 44中所安裝的每一庫程序集的單個副本加載到存儲器。在主控設備4上執(zhí)行的許多不同的程序可以調用被加載到存儲器的庫程序集的單個副本的方法。這可以減少對主控設備4同時地在存儲器中存儲公共的一組功能的多個副本的需要。解除引用資源34A或資源34B中的一個或多個可以要求請求處理器模塊42利用被安裝在GAC 44中的一個或多個程序集。例如,子目錄32A中的資源可以是含有利用由被存儲在GAC 44中的程序集的第一版本提供的功能的服務器側腳本的ASP. NET頁面。此外, 在此示例中,子目錄32B中的資源可以是包括利用由GAC 44中的程序集的第二版本提供的功能的服務器側腳本的ASP. NET頁面。子目錄32A可以含有指定在子目錄32A中的各資源和GAC 44中的程序集的各版本之間的綁定的web配置文件。例如,GAC 44可以含有“flfebcontrols. dll”程序集的第一版本和第二版本。在此示例中,子目錄32A的web配置文件可以指定子目錄32A中的各資源對“flfebcontrols. dll”程序集的各方法的調用要針對GAC 44中的“flfebcontrols. dll”
      11程序集的第一版本。子目錄32B和含有與該web應用程序的各版本相關聯的資源的其他子目錄可以含有相似的web配置文件。繼續(xù)先前的示例,子目錄32B的web配置文件可以指定子目錄32B中的各資源對“ffebcontrols. dll ”程序集的各方法的調用要針對GAC 44中的“ffebcontrols.dll”程序集的第二版本。以此方式,與該web應用程序的不同版本相關聯的資源可以利用被安裝在GAC 44中的各程序集的各不同版本。如上面所討論,該web應用程序的各版本中的每一版本可以提供不同的用戶體驗。本公開內容中所使用的“用戶體驗”是用戶與web應用程序交互的方式。即使各用戶正在查看由web應用程序提供的以不同語言的頁面,兩個用戶也對該web應用程序擁有相同的用戶體驗。例如,web應用程序的一個版本可以將該web頁面的第一版本提供給第一用戶并將該web頁面的第二版本提供給第二用戶。在此示例中,該web頁面的第一版本和該web 頁面的第二版本可以具有完全相同的布局和功能,但是可以在諸如文本或圖形等的特定元素中不同,而可以相互代替。舉例來說,第一 web頁面中的文本可以用葡萄牙語寫成,且第二 web頁面中的文本可以用法語寫成。在此示例中,第一用戶和第二用戶可以具有相同的用戶體驗,這是因為第一用戶和第二用戶可以以相同的方式與web應用程序交互。相反,如果各用戶由于頁面布局、頁面功能、站點組織等等而必須不同地與頁面交互,則web應用程序的各不同版本可以提供不同的用戶體驗。為了進一步闡釋這一點,考慮可以被用來提供不同的靜態(tài)元素但是不改變用戶與 web應用程序交互的方式的.NET衛(wèi)星程序集。舉例來說,ASP. NET頁面可以包括調用由庫程序集提供的方法的服務器側腳本。默認地,該庫程序集的方法可以返回英語語言的串。在此示例中,衛(wèi)星程序集可以與該庫程序集相關聯。該衛(wèi)星程序集與特定的文化相關聯,且含有將該庫程序集的操作局部化為特定文化的靜態(tài)的(即,非代碼的)資源。在典型的使用中,該衛(wèi)星程序集含有特定文化的語言的串。舉例來說,與法裔加拿大人的文化相關聯的該衛(wèi)星程序集可以含有法裔加拿大人的方言的串。當該ASP. NET頁面中的該服務器側腳本調用由該庫程序集提供的方法且文化喜好被設置成法裔加拿大人時,該方法返回法裔加拿大人的方言的而不是英語語言的串。各串可以是圖像的URL、要包括在web頁面中的文本等等。以此方式,通過提供一組衛(wèi)星程序集,web設計者可以無需重寫用來創(chuàng)建該web頁面的庫程序集就提供不同語言的web頁面。換句話說,當伴有一組衛(wèi)星程序集時,單個庫程序集可以生成多種語言的web頁面。然而,在web應用程序中使用衛(wèi)星程序集不提供不同的用戶體驗,這是因為所有用戶在與該web應用程序交互時都具有基本上相同的體驗。參考在圖2的示例中闡釋的各邏輯組件,圖3是闡釋主控設備4的示例操作的流程圖。如在圖3的示例中所闡釋的,版本模塊38經由網絡8從客戶機設備6接收與web應用程序相關聯的請求(60)。接下來,版本模塊38判斷該請求是否包括標識該web應用程序的版本的版本標識符(6 。例如,版本模塊38可以判斷該請求是否包括指定標識該web應用程序的一個版本的版本標識符的cookie。如果判斷該請求包括標識該web應用程序的一個版本的版本標識符(62的“是”),則請求重寫模塊40重寫由該請求指定的路徑名,使得該路徑名包括存儲與該web應用程序的指定版本相關聯的資源的子目錄的子目錄名稱(64)。 在其中判斷該請求指定該web應用程序的一個版本的場景中,該web應用程序的指定版本是該web應用程序的適用版本。另一方面,如果判斷該請求不包括標識該web應用程序的一個版本的版本標識符(62的“否”),則版本模塊38可以自動地標識該web應用程序的適用版本(66)。如上面參考圖2所討論的,版本模塊38可以使用組數據庫44來標識該web應用程序的適用版本。在版本模塊38自動地標識該web應用程序的適用版本之后,請求重寫模塊40重寫由該請求指定的路徑名,使得該路徑名包括含有與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱陽8)。因為請求重寫模塊40在主控設備4處重寫該路徑名,客戶機設備6可以不接收該路徑名已經被重寫的任何指示。一旦在步驟64或步驟68請求重寫模塊40重寫由該請求指定的路徑名,請求處理器模塊42就解除引用由所重寫的請求中的路徑名標識的資源(70)。例如,請求處理器模塊42可以通過執(zhí)行生成HTML文件的ASP. NET頁面中的腳本來解除引用由該路徑名指定的 ASP. NET頁面。在另一實例中,請求處理器模塊42可以通過將該請求中的信息提供給通用網關接口(CGI)資源來解除引用由該路徑名提供的CGI資源。在請求處理器模塊42解除引用由所重寫的請求中的路徑名標識的資源之后,請求處理器模塊42可以生成對該請求的響應(7 。如果該響應是HTTP響應,則該響應可以含有指示客戶機設備6設置含有該web應用程序的適用版本的版本標識符的cookie的設置cookie首部。從而,客戶機設備6將設置cookie首部的內容包括在與該web應用程序相關聯的隨后的HTTP請求中。在另一示例中,請求處理器模塊42可以重寫該響應,使得響應中指定與該web應用程序相關聯的資源的位置的各路徑名包括存儲與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱。這些技術可以允許主控設備4放棄(forego) 使用組數據庫36來標識該web應用程序的適用版本的潛在地昂貴的步驟。在生成對該請求的響應之后,請求處理器模塊42可以將該響應發(fā)送給客戶機設備 6(74)。應明白,在圖3的示例中闡釋的操作僅僅是主控設備4的一個示例操作。例如,在主動設備4的另一示例操作中,當由該請求指定的路徑名包括存儲與該web應用程序的一個版本相關聯的資源的子目錄的子目錄名稱時,版本模塊38可以判斷該請求指定版本標識符。在此示例中,如果由該請求指定的路徑名包括存儲與該web應用程序的一個版本相關聯的資源的子目錄的子目錄名稱,則不需要請求重寫模塊40重寫由該請求指定的路徑名。圖4是可以被用來存儲與web應用程序的兩個版本相關聯的資源的目錄結構 90的圖。如在圖4的示例中所闡釋的,目錄結構90包括與該目錄名稱“/applicatioru root(應用程序_根)”相關聯的目錄。"/application_root"目錄包括與目錄名稱 “VerSion_2008_01”相關聯的第一子目錄和與目錄名稱“version_2008_02”相關聯的第二子目錄。換句話說,"version_2008_01"子目錄和“version_2008_02,,子目錄是單個直接父目錄(即“/application_root,,目錄)的孩子目錄?!皏ersion_2008_01,,子目錄可以存儲與web應用程序的第一版本相關聯的資源,且“verSion_2008_02”子目錄可以存儲與web 應用程序的第二版本相關聯的資源。圖4的示例進一步闡釋“version_2008_01”子目錄包括“Cancelation (取消),,子目錄、“ Intercept Survey (截獲調查)”子目錄”、"Misc (雜項)”子目錄、“Resources (資源)”子目錄、“RSS”子目錄和“Services (服務)”子目錄。另外,圖4的示例闡釋“Intercept Survey”子目錄包括“En-us (英語-美國)”子目錄。圖4的示例還闡釋“Resources”子目錄包“Dialog (對話)”子目錄、“Editor (編輯器)”子目錄、“ Images (圖像)”子目錄、“ Js” 子目錄、“Templates (模板)”子目錄、“RSS”子目錄和Services (服務)”子目錄等。盡管在圖4的示例中未闡釋,但“ vers i on_2008_02 ”子目錄可以具有與“ver si on_2008_01,,子目錄相同的或相似的子目錄。可以使用目錄結構90來提供請求重寫模塊40如何重寫請求的示例。在一個這樣的示例中,版本模塊38可以標識其資源被存儲在“version_2008_01”子目錄中的web 應用程序的一個版本。在此示例中,請求重寫模塊40可以接收指定下列路徑名的請求 "application_root/Resources/Images/logo. jpg,,。 iftii各@名f)(寸目 ig豐勾 90 中的子目錄的路徑名。當請求重寫模塊40接收到該請求時,請求重寫模塊40可以重寫該請求中白勺足各@$,1 ^ 為:"application_root/version_2008_01/Resources/Images/ logo. jpg,,。圖5是闡釋主控設備4的各示例硬件組件的框圖。如在圖5的示例中所闡釋的, 主控設備4包括存儲器單元100。存儲器單元100是能夠存儲數據和指令的計算機可讀存儲介質。存儲器單元100可以是各種不同類型的計算機可讀存儲介質,包括但不限于動態(tài)隨機存取存儲器(DRAM)、雙數據速率同步動態(tài)隨機存取存儲器(DDR SDRAM)、減少延遲的 DRAM、DDR2SDRAM、DDR3SDRAM、Rambus RAM或其他類型的計算機可讀存儲介質。另外,主控設備4包括能夠執(zhí)行指令的處理單元102。處理單元102可以被實現為一個或多個處理核心和/或被實現為一個或多個分離的微處理器。例如,處理單元102可以被實現為一個或多個htel Core 2微處理器。處理單元102能夠執(zhí)行諸如x86指令集 POWER指令集、RISC指令集、SPARC指令集、IA-64指令集、MIPS指令集或另一指令集等的指令集中的指令。主控設備4還包括允許主控設備4將視頻信息輸出到顯示設備106的視頻接口 104。顯示設備106可以是各種不同類型的顯示設備。舉例來說,顯示設備106可以是陰極射線管顯示器、LCD顯示面板、等離子體屏幕顯示面板、觸敏顯示面板、LED陣列或另一類型的顯示設備。另外,主控設備4包括非易失性存儲設備108。非易失性存儲設備108是能夠存儲數據和/或指令的計算機可讀存儲介質。非易失性存儲設備108可以是各種不同類型的不同的非易失性存儲設備。例如,非易失性存儲設備108可以是一個或多個硬盤驅動器、磁帶盒驅動器、CD-ROM驅動器、DVD-ROM驅動器、藍光盤驅動器或其他類型的非易失性存儲設備。主控設備4還包括允許主控設備4與外部組件通信的外部組件接口 110。如在圖 5的示例中所闡釋的,外部組件接口 110與輸入設備112和外部存儲設備114通信。在主控設備4的一種實現中,外部組件接口是通用串行總線(USB)接口。在主控設備4的其他實現中,主控設備4可以包括允許主控設備4與輸入設備和/或輸出設備通信的另一類型的接口。舉例來說,主控設備4可以包括PS/2接口。輸入設備112可以是各種不同類型的設備,包括但不限于鍵盤、鼠標、跟蹤球、觸針輸入設備、觸摸板、觸敏顯示屏或其他類型的輸入設備。外部存儲設備114可以是各種不同類型的計算機可讀存儲介質,包括磁帶盒、閃速存儲器模塊、磁盤驅動器、光盤驅動器和其他計算機可讀存儲介質。另外,主控設備4包括允許主控設備4向網絡8發(fā)送數據和從網絡8接收數據的網絡接口 116。網絡接口 116可以是各種不同類型的網絡接口。例如,網絡接口 116可以是以太網界面、令牌環(huán)網絡接口、光纖網絡接口、無線網絡接口(例如,WiFi、WiMax等等)或另一類型的網絡接口。 主控設備4還包括促進主控設備4的各種組件之間的通信的通信介質118。通信介質118可以包括一個或多個不同的類型的通信介質,包括但不限于PCI總線、PCI Express 總線、加速圖形端口(AGP)總線、Infiniband互連、串行高級技術附件(ATA)互連、并行 ATA互連、光纖信道互連(Fibre Channel interconnect)、USB總線、小型計算機系統接口 (SCSI)接口或另一類型的通信介質。在圖5的示例中闡釋若干計算機可讀存儲介質(即,存儲器100、非易失性存儲設備108和外部存儲設備114)。這些計算機可讀存儲介質可以一起構成單個邏輯計算機可讀存儲介質。此單個邏輯計算機可讀存儲介質可以可由處理單元102執(zhí)行的存儲指令。上面所描繪的動作可以得自執(zhí)行被存儲在這一單個邏輯計算機可讀存儲介質的指令。因而,當這一描述表示特定的邏輯模塊執(zhí)行特定的動作時,這樣的聲明可以被解釋成意指該軟件模塊的指令引起諸如處理單元102等的處理單元執(zhí)行該動作??梢砸愿鞣N方式來概念化本公開內容的技術。例如,本公開內容的技術可以被概念化成用于提供web應用程序的多個版本的方法。該方法包括在計算設備可訪問的計算機可讀存儲介質上存儲含有一組子目錄的分層目錄系統,該組子目錄中的每一子目錄具有一子目錄名稱。另外,該方法包括在該計算機可讀介質上在各子目錄中的每一子目錄內存儲與web應用程序的一組版本中的web應用程序的不同版本相關聯的資源,其中該web應用程序的各版本中的每一版本提供不同的用戶體驗。該方法還包括在該計算設備處經由電子通信網絡從客戶機設備接收指定與該web應用程序相關聯的資源的路徑名的請求。此外, 該方法包括響應于接收到該請求,在該計算設備處自動地從該web應用程序的該組版本標識該web應用程序的適用版本。該方法還包括在該計算設備處重寫該請求,使得該路徑名包括存儲與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱。此外,該方法包括在重寫該請求之后,在該計算設備處解除引用所重寫的請求中的路徑名所標識的資源。在另一示例中,本公開內容的技術可以被概念化成包括能夠執(zhí)行指令的處理單元的電子計算設備。該電子計算設備還包括促進在包括客戶機設備的電子通信網絡上的通信的網絡接口。此外,該電子計算設備包括非易失性存儲設備,其存儲含有是單個父母目錄的孩子目錄的一組子目錄的分層目錄系統,其中該組子目錄中的每一子目錄具有一子目錄名稱,且在各子目錄中的每一子目錄內存儲與該web應用程序的一組版本中的web應用程序的不同版本相關聯的資源。該web應用程序的各版本中的每一版本提供不同的用戶體驗。該電子計算設備還包括版本模塊,該版本模塊經由電子通信網絡從客戶機設備接收指定與該web應用程序相關聯的資源的路徑名的請求,且響應于接收到該請求,自動地從該 web應用程序的該組版本標識該web應用程序的適用版本。另外,該電子計算設備包括請求重寫模塊,該請求重寫模塊重寫該請求,使得該路徑名包括存儲與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱。此外,該電子計算設備包括請求處理器模塊,該請求處理器模塊在該請求已經被重寫之后,解除引用由所重寫的請求中的路徑名標識的資源,并將由所重寫的請求中的路徑名標識的資源發(fā)送給該客戶機設備。
      15
      本公開內容的技術還可以被概念化成包括含有多個子目錄的分層目錄系統的計算機可讀存儲介質。各子目錄中的每一子目錄與不同的子目錄名稱相關聯。各子目錄中的每一子目錄存儲與web應用程序的一組版本中的該web應用程序的不同版本相關聯的資源。各子目錄中的每一子目錄是單個直接父子目錄的孩子目錄。在各子目錄中的每一子目錄中存在被同等地命名的資源。該web應用程序的各版本中的每一版本通過提供不同的功能組和不同的用戶界面來提供不同的用戶體驗。計算機可讀存儲介質還包括包含一組規(guī)則的組數據庫,該組規(guī)則中的每一規(guī)則指定一條件和web應用程序的各版本中的一個版本。此外,該計算機可讀存儲介質包括當在計算設備處執(zhí)行時引起該計算設備經由電子通信網絡從客戶機設備接收指定與該web應用程序相關聯的資源的路徑名的超文本傳輸協議(HTTP)請求的指令。各指令還引起該計算設備響應于接收到該HTTP請求而判斷該HTTP 請求是否包括標識該web應用程序的適用版本的版本標識符,其中該web應用程序的適用版本是該web應用程序的各版本中的一個版本。此外,各指令引起該計算設備在該HTTP請求不包括標識該web應用程序的適用版本的版本標識符時使用各規(guī)則來自動地從該web應用程序的該組版本標識該web應用程序的適用版本。各指令還引起該計算設備重寫該HTTP 請求,使得該路徑名包括存儲與該web應用程序的適用版本相關聯的資源的子目錄的子目錄名稱,由此引起該路徑名標識存儲與該web應用程序的適用版本相關聯的資源的子目錄中的資源。此外,各指令引起該計算設備在重寫該HTTP請求之后解除引用由所重寫的HTTP 請求中的路徑名標識的資源。各指令還引起該計算設備生成對該HTTP請求的HTTP響應, 該HTTP響應含有由所重寫的HTTP請求中的路徑名標識的資源和將該客戶機設備配置成在與該web應用程序相關聯的隨后的HTTP請求中包括標識該web應用程序的適用版本的該版本標識符的數據。盡管已經用對結構特征和/或方法論動作來說專用的語言描述了本主題,但應理解,在所附權利要求中界定的本主題不必限于以上所描述的具體的特征或動作。相反,以上所描述的具體的特征和動作是作為實現權利要求的示例形式而公開的。
      權利要求
      1.一種用于提供web應用程序的多個版本的方法,所述方法包括在計算設備(4)可訪問的計算機可讀存儲介質上存儲含有一組子目錄(3 的分層目錄系統(30),每一子目錄具有一子目錄名稱;在所述計算機可讀存儲介質上,在所述各子目錄中的每一子目錄內,存儲與web應用程序的一組版本中的所述web應用程序的不同版本相關聯的資源(34),其中所述web應用程序的所述各版本中的每一版本提供不同的用戶體驗;在所述計算設備(4)處,經由電子通信網絡(8)從客戶機設備(6)接收(60)指定與所述web應用程序相關聯的資源的路徑名的請求;響應于接收所述請求,在所述計算設備(4)處自動地從所述web應用程序的所述一組版本中標識(66)所述web應用程序的適用版本;在所述計算設備處重寫(6 所述請求,使得所述路徑名包括存儲與所述web應用程序的所述適用版本相關聯的所述資源的所述子目錄的所述子目錄名稱;以及在重寫所述請求之后,在所述計算設備(4)處解除引用(70)由所述所重寫的請求中的所述路徑名標識的資源。
      2.如權利要求1所述的方法,其特征在于,還包括在所述計算機可讀存儲介質處存儲將所述web應用程序的所述各版本與各用戶組關聯起來的信息;以及其中自動地標識所述web應用程序的所述適用版本包括使用將所述web應用程序的所述各版本與各用戶組關聯起來的所述信息來標識與所述客戶機設備的用戶相關聯的所述 web應用程序的所述版本,由此標識所述web應用程序的所述適用版本。
      3.如權利要求2所述的方法,其特征在于存儲將所述web應用程序的所述各版本與各用戶組關聯起來的信息包括存儲一組規(guī)則,所述一組規(guī)則中的每一規(guī)則指定一條件和所述web應用程序的所述各版本中的一個版本;以及使用將所述web應用程序的所述各版本與各用戶組關聯起來的所述信息來標識與所述客戶機設備的用戶相關聯的所述web應用程序的所述版本包括評估所述各規(guī)則。
      4.如權利要求3所述的方法,其特征在于接收所述請求包括接收含有指定可接受的語言的“接受-語言”首部的超文本傳輸協議(HTTP)請求;以及存儲所述一組規(guī)則包括存儲基于所述HTTP請求的所述“接受-語言”首部的值指定一條件的規(guī)則。
      5.如權利要求1所述的方法,其特征在于所述方法還包括存儲指定用戶優(yōu)選所述web應用程序的所述各版本中的第一版本的喜好數據;以及自動地標識所述web應用程序的所述適用版本包括當所述客戶機設備由所述用戶使用時使用所述喜好數據來將所述web應用程序的所述各版本中的所述第一版本標識成所述web應用程序的所述適用版本。
      6.如權利要求1所述的方法,其特征在于由所述所重寫的請求中的所述路徑名標識的所述資源包括服務器側腳本;以及解除引用由所述所重寫的請求中的所述路徑名標識的所述資源包括執(zhí)行所述服務器側腳本。
      7.如權利要求1所述的方法,其特征在于,還包括在解除引用由所述所重寫的請求中的所述路徑名標識的所述資源之后,在所述計算設備處生成含有由所述所重寫的請求中的所述路徑名標識的所述資源的HTTP響應;以及將所述HTTP響應發(fā)送給所述客戶機設備。
      8.如權利要求7所述的方法,其特征在于,生成所述HTTP響應包括重寫所述HTTP響應,使得指定與所述web應用程序相關聯的資源的位置的所述HTTP響應中的路徑名包括存儲與所述web應用程序的所述適用版本相關聯的資源的所述子目錄的所述子目錄名稱。
      9.如權利要求7所述的方法,其特征在于,生成所述HTTP響應包括生成所述HTTP響應以使得所述HTTP響應包括指示所述客戶機設備設置含有標識所述web應用程序的所述適用版本的版本標識符的cookie的首部。
      10.如權利要求1所述的方法,其特征在于所述方法還包括在所述計算設備處判斷所述請求是否包括標識所述web應用程序的所述適用版本的版本標識符;以及自動地標識所述web應用程序的所述適用版本包括當判斷所述請求不包括標識所述 web應用程序的所述適用版本的版本標識符時自動地標識所述web應用程序的所述適用版本。
      11.如權利要求1所述的方法,其特征在于,憑借呈現與所述web應用程序的所述各版本中的所述第二版本所呈現的用戶界面不同的用戶界面,所述web應用程序的所述各版本中的第一版本提供與所述web應用程序的所述各版本中的第二版本不同的用戶體驗。
      12.如權利要求1所述的方法,其特征在于,憑借提供與所述web應用程序的所述各版本中的所述第二版本呈現的用戶界面不同的功能,所述web應用程序的所述各版本中的第一版本提供與所述web應用程序的所述各版本中的第二版本不同的用戶體驗。
      13.如權利要求1所述的方法,其特征在于,至少所述子目錄中的第一子目錄和所述子目錄中的第二子目錄是單個直接父子目錄的孩子目錄。
      14.一個電子計算設備G),包括 能夠執(zhí)行指令的處理單元(102);促進在包括客戶機設備(6)的電子通信網絡⑶上的通信的網絡接口(116); 存儲下列的非易失性存儲設備(108)含有一組子目錄(3 的分層目錄系統(30),所述一組子目錄是單個父目錄的孩子目錄,其中所述一組子目錄中的每一子目錄具有一子目錄名稱,以及在所述各子目錄中的每一子目錄內,存儲與web應用程序中的一組版本中的所述web 應用程序的不同版本相關聯的資源(34),其中所述web應用程序的所述各版本中的每一版本提供不同的用戶體驗;版本模塊(38),所述版本模塊經由所述電子通信網絡(8)從所述客戶機設備(6)接收指定與所述web應用程序相關聯的資源的路徑名的請求,并且響應于接收所述請求,自動地從所述web應用程序的所述一組版本中標識所述web應用程序的適用版本;請求重寫模塊GO),所述請求重寫模塊重寫所述請求,使得所述路徑名包括存儲與所述web應用程序的所述適用版本相關聯的所述資源的所述子目錄的所述子目錄名稱;以及請求處理器模塊(42),所述請求處理器模塊在所述請求已經被重寫之后解除引用由所述所重寫的請求中的所述路徑名標識的資源,并且將由所述所重寫的請求中的所述路徑名標識的所述資源發(fā)送給所述客戶機設備(6)。
      15.如權利要求14所述的電子計算設備,其特征在于,所述版本模塊、所述請求重寫模塊和所述請求處理器模塊包括由所述處理單元執(zhí)行的指令。
      16.如權利要求14所述的電子計算設備,其特征在于所述計算機可讀介質存儲含有將所述web應用程序的所述各版本與各用戶組關聯起來的信息的組數據庫;以及所述版本模塊使用所述組數據庫來標識所述web應用程序的所述適用版本。
      17.如權利要求14所述的電子計算設備,其特征在于由所述所重寫的請求中的所述路徑名標識的所述資源包括服務器側腳本;以及所述請求處理其模塊部分通過執(zhí)行所述服務器側腳本來解除引用由所述所重寫的請求中的所述路徑名標識的所述資源。
      18.如權利要求14所述的電子計算設備,其特征在于所述非易失性存儲設備存儲指定用戶優(yōu)選所述web應用程序的所述各版本中的第一版本的喜好數據;以及自動地標識所述web應用程序的所述適用版本包括當所述客戶機設備由所述用戶使用時使用所述喜好數據來將所述web應用程序的所述各版本中的所述第一版本標識成所述web應用程序的所述適用版本。
      19.一個計算機可讀存儲介質,包括含有多個子目錄(32)的分層目錄系統(30), 其中所述各子目錄(3 中的每一子目錄與不同的子目錄名稱相關聯, 其中所述各子目錄中的每一子目錄存儲與web應用程序的一組版本中的所述web應用程序的不同版本相關聯的資源(34),其中在所述各子目錄中的每一子目錄中存在被同等地命名的資源, 其中所述各子目錄中的每一子目錄是單個直接父子目錄的孩子目錄,以及其中所述web應用程序的所述各版本中的每一版本通過提供不同的一組功能和不同的用戶界面來提供不同的用戶體驗;組數據庫(36),所述組數據庫包括一組規(guī)則,所述一組規(guī)則中的每一規(guī)則指定一條件和所述web應用程序的所述各版本中的一個版本;以及當在計算設備(4)處被執(zhí)行時引起所述計算設備(4)進行以下的指令 經由電子通信網絡(8)從客戶機設備(6)接收(60)指定與所述web應用程序相關聯的資源的路徑名的超文本傳輸協議(HTTP)請求;響應于接收到所述HTTP請求,判斷(6 所述HTTP請求是否包括標識所述web應用程序的適用版本的版本標識符,其中所述web應用程序的所述適用版本是所述web應用程序的所述各版本中的一個版本;當所述HTTP請求不包括標識所述web應用程序的所述適用版本的版本標識符時,使用 (66)所述各規(guī)則來自動地從所述web應用程序的所述一組版本中標識所述web應用程序的所述適用版本;重寫(6 所述HTTP請求,使得所述路徑名包括存儲與所述web應用程序的所述適用版本相關聯的所述資源的所述子目錄的所述子目錄名稱,由此引起所述路徑名標識存儲與所述web應用程序的所述適用版本相關聯的所述資源的所述子目錄中的資源;在重寫所述HTTP請求之后,解除引用(70)由所述所重寫的HTTP請求中的所述路徑名標識的資源;以及生成(7 對所述HTTP請求的HTTP響應,所述HTTP響應含有由所述所重寫的HTTP請求中的所述路徑名標識的所述資源和將所述客戶機設備配置成在與所述web應用程序相關聯的隨后的HTTP請求中包括標識所述web應用程序的所述適用版本的所述版本標識符的數據。
      20.如權利要求19所述的計算機可讀存儲介質,其特征在于 還包括指定用戶優(yōu)選所述web應用程序的所述各版本中的第一版本的喜好數據;以及其中所述各指令部分通過引起所述計算設備在所述客戶機設備由所述用戶使用時使用所述喜好數據來將所述web應用程序的所述各版本中的所述第一版本標識成所述web應用程序的所述適用版本來引起所述計算設備自動地標識所述web應用程序的所述適用版本。
      全文摘要
      本公開內容描述使用主控設備來提供單個web應用程序的多個版本的技術。如下面詳細描述,主控設備將與web應用程序的不同版本相關聯的資源存儲在不同的子目錄中。當主控設備接收到與web應用程序相關聯的請求時,主控設備自動地將該web應用程序的各版本中的一個版本標識成該web應用程序的適用版本。主控設備將該請求中的路徑名重寫成包括存儲該web應用程序的適用版本的子目錄的子目錄名稱。然后,主控設備解除引用由所重寫的路徑名標識的資源。以此方式,主控設備使用該web應用程序的適用版本的資源來處理該請求。
      文檔編號G06F3/06GK102165430SQ200980139100
      公開日2011年8月24日 申請日期2009年9月2日 優(yōu)先權日2008年9月29日
      發(fā)明者M·A·伊萬諾夫, M·H·李, V·V·瓦爾福洛梅耶夫, V·曼達瓦 申請人:微軟公司
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1