91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

WelcomeFile實現分析是怎樣的

發布時間:2021-11-15 16:12:28 來源:億速云 閱讀:149 作者:柒染 欄目:大數據

這期內容當中小編將會給大家帶來有關WelcomeFile實現分析是怎樣的,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

在Web應用中,我們經常會發送類似如下格式的請求:

host:port/context/dir/

當然,上面到dir這一層的有時候會帶,有時候則是直接請求根應用。這個時候,應用服務器就需要判斷對應的請求以哪種形式 進行展現,例如對于一個目錄的請求,這個時候,如果目錄下包含特定的某個頁面,那這個時候可能是要請求頁面,也可能是 想進行目錄的list操作。

這個時候,就需要用到Web應用中的 Welcome File

關于 Welcome File , Servlet規范中指明,它是在web描述文件中指定部分請求路徑的一個有序的列表。主要用于 在請求指向一個directory entry,且沒和任何的Web組件有關聯的時候,進行append,從而決定具體請求的地址

 例如我們上面的請求形式,如果此時dir并沒有對應到任何一個Servlet或Jsp上,此時有類似index.html這種welcomeFile的配置, 就會幫助請求進行定向。

如果上面的請求沒有對應到的WelcomeFile,此時會根據應用服務器的配置,進行請求目錄的列表(如果該操作是設為允許的話,可以查看之前關于List的文章Tomcat是如何響應靜態資源的?),或者直接 返回404.

在應用中配置WelcomeFile也很簡單,只需要在web.xml中直接指定即可,格式如下,來自規范中的描述:

WelcomeFile實現分析是怎樣的

假設我們在應用中指定了如下形式的welcomeFile

<welcome-file-list>    <welcome-file>index.html</welcome-file>    <welcome-file>default.jsp</welcome-file></welcome-file-list>

如果應用目錄結構包含如下dir /test/index.html /test/a.jsp /hello/x.jsp /hello/default.jsp

此時,我們請求到應用的test目錄時,就會被指向index.html。請求hello會被指向default.jsp

再來看下,在Tomcat中對應WelcomeFile的實現方式。

我們在web.xml這個描述文件中配置的內容,都會在應用部署時進行解析,配置應用。welcome-file-list也不例外。 在應用內指定的會是第一優先級。應用中沒有顯式的指定,就會使用應用服務器默認提供的conf/web.xml中的配置。

web.xml中的配置,會被保存到一個Set中

WelcomeFile實現分析是怎樣的

在部署的時候,添加到StandardContext中

WelcomeFile實現分析是怎樣的

后續,在接收到請求的時候,就需要判斷具體的請求路徑和welcomeFile的配置。

我們前面的文章里寫過幾次請求,也寫過虛擬主機

如何不配置應用名訪問應用?

Facade模式與請求處理

Tomcat多虛擬主機配置及原理

這其中都提到了一個叫Mapper的組件。人如其名,它就是為我們做指引的。在請求過程中,基本是按照這樣一個流程:

EndPoint -> Processor -> CoyoteAdapter -> Mapper -> Pipeline -> Valve ...

這里Mapper在我們前面的文章中寫過,會根據已經注冊的虛擬主機,應用進行請求判斷。對于本次文章提到的welcome,則是在判斷后的流程中處理

判斷中按照不同的匹配規則從前到后進行:

  • Exact Match

  • Prefix Match

  • Extension Match

  • Welcome resources processing for servlets

    • Welcome resources processing for exact macth

    • Welcome resources processing for prefix match

    • Welcome resources processing for physical folder

  • Default servlet

以上我邏輯,基本都是根據請求的路徑,進行不同的match,比較重要的一點是這里:

WelcomeFile實現分析是怎樣的

如我們前面提到的,會在使用welcomeFile進行請求判斷的時候,把它append到當前請求路徑之后進行。

上述就是小編為大家分享的WelcomeFile實現分析是怎樣的了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阳朔县| 水城县| 阿瓦提县| 信阳市| 延边| 法库县| 丰城市| 化隆| 四川省| 泰顺县| 义乌市| 石狮市| 滦平县| 尉犁县| 中牟县| 萨嘎县| 顺昌县| 晋江市| 平度市| 于田县| 凤城市| 桐庐县| 海门市| 海兴县| 固阳县| 洪泽县| 嘉义县| 忻城县| 龙海市| 武清区| 台东市| 福建省| 循化| 教育| 烟台市| 丰原市| 祁阳县| 凤翔县| 临海市| 新野县| 云南省|