.NET 反向代理-YARP 根据域名转发
前段时间发布过一个关于 YARP 的简单介绍,感兴趣的小伙伴恭请移步看看 .NET 反向代理-YARP - 一事冇诚 - 博客园 (cnblogs.com)
作为反向代理,必不可少的当然是根据域名代理转发啦,毫无疑问,YARP 是支持通过域名代理转发的,本文将介绍如何在配置文件中进行域名的配置
首先,你得有一个域名,本地测试的话可以修改 host 文件,达到假装自己有域名的效果【手动狗头】,有些小伙伴可能不知道怎么设置域名、和怎么修改 host 文件,下面我简单说一下:
域名服务商
笔者手上只有一个域名,而且是华为云的,所以就拿华为云的作为介绍啦,其他的域名服务上都大同小异:
1、登录进入到 华为云-控制台,并展开左上角菜单,搜索 “域名”,点击进入到 “云解析服务 DNS”

2、点击 “公网域名”,然后找到需要进行解析的域名的对应操作栏,点击 “管理解析”

3、进入到 “管理解析” 页面后,点击右上角的 “添加记录集”,即可进行域名解析配置


配置说明:
主机记录:简单来说就是创建一个前缀,用于区分这个域名是干嘛的,例如我可以创建一个 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了


这里也有一点需要注意的,修改完成后,如果浏览器是处于打开状态,请关掉重新启动,不然是不会重新加载 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 配置即可,是不是非常的简单啊!我们看看实际效果:

并且在控制台中,也会产生相应的输出

好了,本次介绍到此结束,感谢各位大佬的阅读!
原文链接:https://www.cnblogs.com/ysmc/p/16714201.html
.NET 反向代理-YARP 根据域名转发的更多相关文章
- 002-nginx-在 nginx 反向代理中使用域名,配置动态域名解析
一.概述 代理(proxy),即中间人,它代替客户端发送请求给服务器,收到响应后再转给客户端.通常意义上的代理是从用户的角度讲的,用户通过某个代理可以访问多个网站,这个代理是靠近用户的,比如某些公司可 ...
- nginx实现反向代理 配置多域名以及多端口号
多个服务部署在同一个服务器,使用不同的端口. 一.思考过程 如果不想带上端口号,就只能访问 80 或 443 端口. 可以用过二级目录区分服务,通过反向代理转发到不同的 Server. 可以用过子域名 ...
- .NET 反向代理-YARP 部署Https(SSL)
YARP 作为反向代理中间件,那就无可避免需要使用到 Https 去部署项目,那 YARP 要怎么去实现呢,本来以为 YARP 会有一套自己的实现,在翻阅了资料后发现,根本不是我想的那样,按照 YAR ...
- .NET 反向代理 YARP 跨域请求 CORS
使用过 nginx 的小伙伴应该都知道,这个中间件是可以设置跨域的,作为今天的主角,同样的 反向代理中间件的 YARP 毫无意外也支持了跨域请求设置. 有些小伙伴可能会问了,怎样才算是跨域呢? 在 H ...
- .NET 反向代理 YARP 代理 GRPC
前面的 YARP 文档中,介绍了怎么去代理 http,和如何根据域名转发,而在现在微服务的应用是越来越来多了,服务间的调用依靠 http 越来越不现实了,因为 http 多次握手的耗时越发的影响应用的 ...
- 设置nginx反向代理将80端口转发到9999端口
关于linux系统不允许个人账户使用80端口,导致无法将express默认的bin/www内3000端口改为80端口一个问题,可以使用sudo来强制启动,当然,这样显然不合适,这时候,可以使用ngin ...
- .NET 反向代理-YARP
什么是 YARP YARP (另一个反向代理) 设计为一个库,提供核心代理功能,你可以根据应用程序的特定需求进行自定义. YARP 是使用 .NET的基础架构构建在 .NET上的.YARP 的主要不同 ...
- nginx ip配置反向代理为本地域名
#### gitlab反向代理 server { listen ; server_name gitlab.hp.com; location / { proxy_pass http://192.168. ...
- .NET 反向代理 YARP 通过编码方式配置域名转发
前面介绍了 YARP 通过配置文件的方式配置代理转发(传送门),而众所周知,微软的一贯作风就是能通过配置文件做的事情,通过编码的方式也能实现!YARP 也不例外,废话不多说,直接上代码! 首先,参照官 ...
随机推荐
- 步态识别《GaitSet: Regarding Gait as a Set for Cross-View Gait Recognition》2018 CVPR
Motivation: 步态可被当作一种可用于识别的生物特征在刑侦或者安全场景发挥重要作用.但是现有的方法要么是使用步态模板(能量图与能量熵图等)导致时序信息丢失,要么是要求步态序列连续,导致灵活性差 ...
- throws关键字_异常处理的第一种方式(交给别人处理)和try_catch_异常处理的第二种方式(自己处理)
throws关键字:异常处理的第一种方式,交给别人处理 作用: 当方法内部抛出异常对象的时候,那么我们就必须处理这个异常对象 可以使用throws关键字处理异常对象, 会把异常对象声明抛出给方法的调用 ...
- JavaScript基本知识点——带你逐步解开JS的神秘面纱
JavaScript基本知识点--带你逐步解开JS的神秘面纱 在我们前面的文章中已经深入学了HTML和CSS,在网页设计中我们已经有能力完成一个美观的网页框架 但仅仅是网页框架不足以展现出网页的魅力, ...
- JAVA编程练习01作业
1.已知y与x的关系:,要求:从键盘上输入一个x的值,输出其对应的y的值. 2. 输入一个圆半径(r),计算并输出圆的面积和周长. 3.输入一个三位正整数n,输出其个位.十位和百位上的数字. 4.根据 ...
- 如何在CentOS上找出逐渐耗尽磁盘空间的目录和文件
起因 随着系统运行,CentOS空间不断减少,对此非常焦虑,到底磁盘空间被哪些新增文件占用了呢? 分析过程,主要使用du命令,逐层找出消耗空间的目录 1.在根目录下检索一下文件的占用情况,执行du命令 ...
- 分析 java.util.LinkedHashMap
介绍 该实现与HashMap不同的是它维护一个双向链表,可以使HashMap有序.与HashMap一样,该类不安全. 结构 和HashMap的结构非常相似,只不过LinkedHashMap是一个双向链 ...
- Dapr 与 NestJs ,实战编写一个 Pub & Sub 装饰器
Dapr 是一个可移植的.事件驱动的运行时,它使任何开发人员能够轻松构建出弹性的.无状态和有状态的应用程序,并可运行在云平台或边缘计算中,它同时也支持多种编程语言和开发框架.Dapr 确保开发人员专注 ...
- 物无定味适口者珍,Python3并发场景(CPU密集/IO密集)任务的并发方式的场景抉择(多线程threading/多进程multiprocessing/协程asyncio)
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_221 一般情况下,大家对Python原生的并发/并行工作方式:进程.线程和协程的关系与区别都能讲清楚.甚至具体的对象名称.内置方法 ...
- Java学习 (八)基础篇 运算符
目录 运算符 基本运算符 1.一元基础运算(重点) 一元运算符 (a++ / ++a) (a-- / --a) 2.二元基础运算 基础 计算返回值类型 关系运算 幂运算 3.三元运算符 4.逻辑运算符 ...
- 项目操作案例丨西门子PLC通过网关连接ACS800变频器
本案例控制对象为炉条机.以及蒸汽的控制以及现场数据参数的显示以及报警. PLC 选用西门子 CPU,通过 ET200 IO 模块控制现场设备并监控数据.变频器采用ABB ACS800变频器,将ABB ...