.NET 反向代理-YARP 根據域名轉發

編者:

? ? ? fastgithub 就是基于YARP使用域名做轉發邏輯的。?? ??

前段時間發布過一個關于 YARP 的簡單介紹,感興趣的小伙伴恭請移步看看?.NET 反向代理-YARP?

  作為反向代理,必不可少的當然是根據域名代理轉發啦,毫無疑問,YARP 是支持通過域名代理轉發的,本文將介紹如何在配置文件中進行域名的配置

  首先,你得有一個域名,本地測試的話可以修改 host 文件,達到假裝自己有域名的效果【手動狗頭】,有些小伙伴可能不知道怎么設置域名、和怎么修改 host 文件,下面我簡單說一下:

域名服務商

  筆者手上只有一個域名,而且是華為云的,所以就拿華為云的作為介紹啦,其他的域名服務上都大同小異:

  1、登錄進入到 華為云-控制臺,并展開左上角菜單,搜索 “域名”,點擊進入到 “云解析服務 DNS”

0b2d43f3c476905b856f26b7c17c210c.png

?  2、點擊 “公網域名”,然后找到需要進行解析的域名的對應操作欄,點擊 “管理解析”

0ad842426bc632f1fd2b9804dedc4e4f.png

?3、進入到 “管理解析” 頁面后,點擊右上角的 “添加記錄集”,即可進行域名解析配置

156c2132e8c615191b525d66fd30cbfe.png

?913f1a2a9e3081df5ebda81dcd498595.png

?配置說明:

  主機記錄:簡單來說就是創建一個前綴,用于區分這個域名是干嘛的,例如我可以創建一個 test.ysmc.net.cn,表示我這個域名是用于測試的,我這么說只是為了方便理解,還是建議大家去查查正確的解析;

  類型:A-將域名指向IPv4地址;

  值:就是你要指向的具體IP是多少了,因為是測試用,這里直接指向了本地地址 127.0.0.1;

  至于其它的默認就好,需要注意的是,設置完后并非是立馬起效果的,畢竟是需要更新緩存的,所以沒生效不要緊,可以先泡上一杯茶,或者說office【手動狗頭】

本地 hosts 文件

  對于沒有域名的小伙伴來說,可以通過修改本地 houst 文件,以達到同樣擁有域名的狀態,而且還不受限制,想起什么名字就什么名字,非常的 nice;

  1、Win+R 打開 “運行” 對話框,輸入 hosts文件所在目錄路徑:C:\WINDOWS\system32\drivers\etc ,當然,你也可以按照著路徑,一個一個打開,找到 hosts 文件后,右鍵編輯就OK了

?bccc9bc653c9c58888e93d34add8d13b.png

?86d36ee0eac8e288c258f933dce80512.png

  這里也有一點需要注意的,修改完成后,如果瀏覽器是處于打開狀態,請關掉重新啟動,不然是不會重新加載 hosts 文件的,切記切記!

  我們分別創建兩個域名解析,test1.ysmc.net.cn ?test2.ysmc.net.cn,然后開始我們今天的主題吧!

直接上配置文件

"ReverseProxy": {

"Routes": {"baidu": {"ClusterId": "baidu","Match": {"Hosts": [ "test1.ysmc.net.cn" ],"Path": "{**catch-all}"}},"blazor": {"ClusterId": "blazor","Match": {"Hosts": [ "test2.ysmc.net.cn" ],"Path": "{**catch-all}"}}},"Clusters": {"baidu": {"LoadBalancingPolicy": "RoundRobin","Destinations": {"baidu": {"Address": "https://www.baidu.com/"}}},"blazor": {"LoadBalancingPolicy": "RoundRobin","Destinations": {"blazor": {"Address": "https://www.blazor.zone/"}}}}
}

  看過我之前介紹 YARP 的文章的小伙伴可能已經發現了,想要實現 根據域名代理轉發 這個功能,其實只需要在 Match 節點中,添加 Hosts 配置即可,是不是非常的簡單啊!我們看看實際效果:

746129864e1399d34aa4541715140573.png

  并且在控制臺中,也會產生相應的輸出?

7272e0f68c477c2d4ee21e437bfa4180.png

?  好了,本次介紹到此結束,感謝各位大佬的閱讀!

原文鏈接:https://www.cnblogs.com/ysmc/p/16714201.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/282460.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/282460.shtml
英文地址,請注明出處:http://en.pswp.cn/news/282460.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

第一個python小游戲

guess int(input("猜一猜寶寶心目中的數字是多少:")) secret 8 while guess !secret:guess int(input("哎呀猜錯了,重新猜一猜寶寶心目中的數字是多少:"))if guess secret:print("你真厲害,居然猜對了")print("哼,猜對了也不給你獎勵&q…

理論實踐:循序漸進理解AWR細致入微分析性能報告

1. AWR 概述 Automatic Workload Repository(AWR) 是10g引入的一個重要組件。在里面存貯著近期一段時間內(默認是7天)數據庫活動狀態的詳細信息。 AWR 報告是對 AWR 視圖進行查詢而得到的一份自動生成的報告。可以通過下面的腳本手工得到一份 AWR 報告。…

java 動態代理

動態代理 Proxy動態代理是基于實現接口的,被代理類實現了某個功能接口, 代理類實現invocationHandler 接口重寫invoke(Object proxy, Method method , class 代理類) 用Proxy.newProxyInstance(類加載器, 被代理類實現的接口的集合, invocationhandler 的實現類)來創建代理類對…

mysql sql語句書寫之面試部分

要求一 :查詢時,將用戶的手機號碼(比如1331234567)顯示為133***4567 這是在交流群里看到別人發的一個面試題,我本人非常反感直接在查詢時進行處理數據的,查詢出來再處理不好嗎,但是面試題要求是這樣. 這里,簡單的寫了兩個表關聯查詢,然后把手機號碼進行處理顯示出來select a.ui…

Linux中寫入ISO鏡像

1、查看U盤標識 fdisk -l2、寫入鏡像到U盤 sudo dd if/home/***.iso of/dev/sdb轉載于:https://www.cnblogs.com/katzepunk/p/7492813.html

Linux上用戶之間對話

Linux上用戶之間對話 昨天想在CentOS7上與另外一個用戶對話,但把命令忘記了,特此記錄下來。 Write命令 write命令是單向發送一條消息給同機器的Linux用戶。首先通過who命令查看誰在線。 root tty7 2017-03-15 14:38 (:0) root pts/20 …

Redis --數據類型 [1]

一 string 類型 (最簡單常用的類型) string是redis最基本的類型,你可以理解成與Memcached一模一樣的類型,一個key對應一個value。二 Hash類型(哈希) Redis hash是一個string類型的field和value的映射表,hash特別適合用于存儲對象。三 List(列…

KestrelServer詳解[3]: 自定義一個迷你版的KestrelServer

和所有的服務器一樣,KestrelServer最終需要解決的是網絡傳輸的問題。在《KestrelServer詳解[2]: 網絡連接是如何創建的?》,我們介紹了KestrelServer如何利用連接接聽器的建立網絡連接,并再次基礎上演示了如何直接利用建立的連接接…

c# 文件下載

這樣的下載方式 減少服務器的壓力, 還有一種省懶勁的方式:后端在iis上配置一個虛擬目錄,然后讓前端自己拼url地址下載, 這個東西是給后期其他工作人員埋坑,哈哈。 本帖原文轉自與 農碼一生轉載于:https://www.cnbl…

Redis -- 基礎操作 [2]

一 獲取redis當前數據庫符合條件鍵名 [keys pattern]二 設置string形式key-value [set key value]三 獲取存儲在指定 key 中字符串的子字符串 [GETRANGE KEY start end]四 刪除指定鍵值對 [del key]五 為給定key設置過期時間 [Expire KEY SECONDS]注: Expireat KEY TIMESTAMP 同…

Centos7作為VNCserver,本地使用VNCViewer連接

1.概念 VNC是一個遠程連接工具 VNC is used to display an X windows session running on another computer. Unlike a remote X connection, the xserver is running on the remote computer, not on your local workstation. Your workstation ( Linux or Windows ) is only …

SQL Server CONVERT() 日期轉換為新數據類型的 通用函數

http://www.w3school.com.cn/sql/func_convert.asp轉載于:https://www.cnblogs.com/renzhituteng/p/6665569.html

在URL中實現簡易的WebAPI驗簽

本文主要介紹一種與微信公眾平臺對接方式類似的,為 AspNetCore 提供的一種簡易的 WebAPI 簽名驗證中間件。本文相關源碼和案例已開源,地址:https://github.com/sangyuxiaowu/SignAuthorization原理說明簡易的 API url 簽名驗證中間件&#xf…

Redis -- Hash(哈希) [3]

Redis Hash 是一個string類型的field和value的 映射表 ,hash特別適合用于存儲對象。 注 : Redis 中每個 hash 可以存儲 232 - 1 鍵值對(40多億)。 比如這樣:注:在此,首先推薦一款redis可視化工具 https://redisdesktop.com/download , 是非常…

HBuilder 打包流程

1.運行HBuilder---百度搜索HBuilder,官網下載安裝包,解壓,運行HBuilder.exe。注冊賬號,并登陸 2.新建app---在左邊右鍵,選擇新建APP,或者,點擊中間的新建app 3.在彈出的窗口,填入應用…

pandas所占內存釋放

df pd.read_csv(....) 要調用循環處理多個文件時,內存占用情況嚴重,如果互相之間不需要調用,可以直接del df 釋放內存

Python3——字典

Python 字典(Dictionary) 字典是另一種可變容器模型,且可存儲任意類型對象。 字典的每個鍵值(key>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 定義字典 d {} d {key1 : value1, key2 : value2 } d di…

科技以換皮為本:路遙工具箱 V4 版本發布

作為定位“開發輔助”的工具,我也一直在想如何讓工具更有效率。是更快的打開速度還是更豐富的功能?路遙工具箱 V3 版本的界面布局是偏 BS 后臺系統的風格:可折疊的樹形菜單用來拓寬用戶的操作區域,多標簽的功能布局讓軟件保持整潔…

myisam數據表根據frm文件恢復數據表

有時,我們重裝mysql時,可能忘記備份數據了, 只留下了之前的mysql下面的data文件夾里的數據, 這時我們應該如何去恢復數據表呢 如果直接將原來的data目錄導進現在的mysql,肯定是不行的,其實很簡單 我們常用的數據表結構有myisam和innodb,這兩種數據表恢復數據的方式是不一樣的,這…

本文主要總結關于mysql的優化(將會持續更新)

2019獨角獸企業重金招聘Python工程師標準>>> ON DUPLICATE KEY UPDATE 事件背景 在閱讀公司原來代碼的過程中,我發現了這樣一段代碼: $sql "INSERT INTO {$table} ({$fields}) VALUES " . $values; if (!empty($onDuplicate)) {$sql . ON DU…