你不一定知道的UrlPrefix路由規則

2022-01-10 03:34:20 字數 1232 閱讀 5632

接上文,容器內web程式一般會繫結到http://+:,以確保使用容器ip可以訪問到web應用。

正如我們在asp.net core官方映象顯示的,asp.net core程式在容器內80埠監聽請求

web程式啟動後,根據監聽位址urlprefix中的主機元素,會向系統元件http server api註冊不同的路由桶,由http server api將接收的請求時路由到合適的web程式。

強萬用字元 ( + )

當主機元素是乙個加號(+),urlprefix匹配所有可能的主機名,這時的urlprefix屬於強萬用字元類別。

強萬用字元在如下場景下有用:

當web程式要忽略請求到達的方式或忽略請求host標頭中指定的站點時,web伺服器監聽位址的主機元素可設定為強萬用字元+

顯式主機名

當主機元素是完全限定的網域名稱,web伺服器的主機元素直接與傳入請求的host標頭相匹配

明確的主機名對於多站點很有用,這些web站點根據請求所指向的站點傳遞不同的內容。

繫結ip的弱萬用字元

主機元素為ip位址,這種型別的urlprefix匹配尚未與以上強萬用字元或顯式主機名匹配的任意ip位址主機名

弱萬用字元 ( * )

當星號*作為主機元素出現時,

這種型別的urlprefix將會匹配尚未與以上強萬用字元、顯式或ip繫結的弱萬用字元匹配的任意主機名,

此主機元素可以用作預設的catch-all,也可以用於指定url命名空間的較大部分,而不必使用許多urlprefixes

http server api維護了一張路由表,決定哪乙個應用程式接收傳入請求,這張路由表是從預留資料庫中構建的,當新產生乙個註冊項或預留項,將會被放進與特定主機元素相關的路由桶

當多個web程式監聽的urlprefix有重疊時,http server api會根據註冊的1-->4路由桶依次匹配,路由桶中urlprefix的相對uri部分中最長的匹配(假設url的主機,埠和方案部分完全匹配)是最佳匹配。

在路由桶中找到匹配項後,路由演算法將停止搜尋並跳過所有優先順序較低的儲存桶。

這應該是一篇偏冷門的知識點,但是結合我們的實際和理論,相信能給讀者的知識結構添磚加瓦。

abap系列 你不一定知道的open sql用法

作為abaper open sql中的select和in 子查詢屬於日常必備的技能。然而,open sql還有一些語法你可能沒用過甚至沒聽過,這些語法用好了可以大大減少 複雜度和提高效能,下面就來看看這些用法吧。場景1 取建立日期晚於憑證日期的採購憑證,用於統計補單率。1 select eneln ...

逃避不一定躲得過,面對不一定最難過

國王有七個女兒,這七位美麗的公主是國王的驕傲。她 們那一頭烏黑亮麗的長髮遠近皆知。所以國王送給她們每人一百個漂亮的髮夾。有一天 早上,大公主醒來,一如往常地用髮夾整理她的秀髮,卻發現少了乙個髮夾,於是她偷偷地到了二公主的房裡,拿走了乙個髮夾。二公主發現少了乙個髮夾,便到三公主房裡拿走乙個髮夾 三公主...

你不一定知道的幾個很有用的 Git 命令

這裡給大家分享一些很有用的git命令,其中很多用法你可能都不知道,無論你是工作在團隊環境中或在您的個人專案中,這些命令將對你幫助很大,讓你可以更加高效的進行專案開發,更輕鬆愉快的工作和生活。1.匯出最後一次提交修改過的檔案 我一直在使用這個命令定期進行傳送給其他人進行審查 整合。這條命令將把近期提交...