小童话 發表於 2022-9-21 00:29:00

.NET 反向代理-YARP 根据域名转发

<p>  前段时间发布过一个关于 YARP 的简单介绍,感兴趣的小伙伴恭请移步看看&nbsp;.NET 反向代理-YARP - 一事冇诚 - 博客园 (cnblogs.com)</p>
<p>  作为反向代理,必不可少的当然是根据域名代理转发啦,毫无疑问,YARP 是支持通过域名代理转发的,本文将介绍如何在配置文件中进行域名的配置</p>
<p>  首先,你得有一个域名,本地测试的话可以修改 host 文件,达到假装自己有域名的效果【手动狗头】,有些小伙伴可能不知道怎么设置域名、和怎么修改 host 文件,下面我简单说一下:</p>
<p>域名服务商</p>
<p>  笔者手上只有一个域名,而且是华为云的,所以就拿华为云的作为介绍啦,其他的域名服务上都大同小异:</p>
<p>  1、登录进入到 华为云-控制台,并展开左上角菜单,搜索 “域名”,点击进入到 “云解析服务 DNS”</p>
<p><img src="https://img2022.cnblogs.com/blog/1897432/202209/1897432-20220920234655866-1519595698.png" alt="" loading="lazy"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;  2、点击 “公网域名”,然后找到需要进行解析的域名的对应操作栏,点击 “管理解析”</p>
<p><img src="https://img2022.cnblogs.com/blog/1897432/202209/1897432-20220920234914967-855758255.png" alt="" loading="lazy"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>  &nbsp;3、进入到 “管理解析” 页面后,点击右上角的 “添加记录集”,即可进行域名解析配置</p>
<p><img src="https://img2022.cnblogs.com/blog/1897432/202209/1897432-20220920235240947-1102975146.png" alt="" loading="lazy"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><img src="https://img2022.cnblogs.com/blog/1897432/202209/1897432-20220920235927934-1240925521.png" alt="" loading="lazy"></p>
<p>&nbsp;配置说明:</p>
<p>  主机记录:简单来说就是创建一个前缀,用于区分这个域名是干嘛的,例如我可以创建一个 test.ysmc.net.cn,表示我这个域名是用于测试的,我这么说只是为了方便理解,还是建议大家去查查正确的解析;</p>
<p>  类型:A-将域名指向IPv4地址;</p>
<p>  值:就是你要指向的具体IP是多少了,因为是测试用,这里直接指向了本地地址&nbsp;127.0.0.1;</p>
<p>  至于其它的默认就好,需要注意的是,设置完后并非是立马起效果的,毕竟是需要更新缓存的,所以没生效不要紧,可以先泡上一杯茶,或者说office【手动狗头】</p>
<p>&nbsp;</p>
<p>本地 hosts 文件</p>
<p>  对于没有域名的小伙伴来说,可以通过修改本地 houst 文件,以达到同样拥有域名的状态,而且还不受限制,想起什么名字就什么名字,非常的 nice;</p>
<p>  1、Win+R 打开 “运行” 对话框,输入 hosts文件所在目录路径:C:\WINDOWS\system32\drivers\etc ,当然,你也可以按照着路径,一个一个打开,找到 hosts 文件后,右键编辑就OK了</p>
<p>&nbsp;<img src="https://img2022.cnblogs.com/blog/1897432/202209/1897432-20220921000745338-975572703.png" alt="" loading="lazy"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;<img src="https://img2022.cnblogs.com/blog/1897432/202209/1897432-20220921000920073-1484603539.png" alt="" loading="lazy"></p>
<p>  这里也有一点需要注意的,修改完成后,如果浏览器是处于打开状态,请关掉重新启动,不然是不会重新加载 hosts 文件的,切记切记!</p>
<p>  我们分别创建两个域名解析,test1.ysmc.net.cn&nbsp; test2.ysmc.net.cn,然后开始我们今天的主题吧!</p>
<p>直接上配置文件</p>
<div class="cnblogs_code">
<pre>"ReverseProxy"<span style="color: rgba(0, 0, 0, 1)">: {
</span>"Routes"<span style="color: rgba(0, 0, 0, 1)">: {
    </span>"baidu"<span style="color: rgba(0, 0, 0, 1)">: {
      </span>"ClusterId": "baidu"<span style="color: rgba(0, 0, 0, 1)">,
      </span>"Match"<span style="color: rgba(0, 0, 0, 1)">: {
      </span>"Hosts": [ "test1.ysmc.net.cn"<span style="color: rgba(0, 0, 0, 1)"> ],
      </span>"Path": "{**catch-all}"<span style="color: rgba(0, 0, 0, 1)">
      }
    },
    </span>"blazor"<span style="color: rgba(0, 0, 0, 1)">: {
      </span>"ClusterId": "blazor"<span style="color: rgba(0, 0, 0, 1)">,
      </span>"Match"<span style="color: rgba(0, 0, 0, 1)">: {
      </span>"Hosts": [ "test2.ysmc.net.cn"<span style="color: rgba(0, 0, 0, 1)"> ],
      </span>"Path": "{**catch-all}"<span style="color: rgba(0, 0, 0, 1)">
      }
    }
},
</span>"Clusters"<span style="color: rgba(0, 0, 0, 1)">: {
    </span>"baidu"<span style="color: rgba(0, 0, 0, 1)">: {
      </span>"LoadBalancingPolicy": "RoundRobin"<span style="color: rgba(0, 0, 0, 1)">,
      </span>"Destinations"<span style="color: rgba(0, 0, 0, 1)">: {
      </span>"baidu"<span style="color: rgba(0, 0, 0, 1)">: {
          </span>"Address": "https://www.baidu.com/"<span style="color: rgba(0, 0, 0, 1)">
      }
      }
    },
    </span>"blazor"<span style="color: rgba(0, 0, 0, 1)">: {
      </span>"LoadBalancingPolicy": "RoundRobin"<span style="color: rgba(0, 0, 0, 1)">,
      </span>"Destinations"<span style="color: rgba(0, 0, 0, 1)">: {
      </span>"blazor"<span style="color: rgba(0, 0, 0, 1)">: {
          </span>"Address": "https://www.blazor.zone/"<span style="color: rgba(0, 0, 0, 1)">
      }
      }
    }
}
}</span></pre>
</div>
<p>  看过我之前介绍 YARP 的文章的小伙伴可能已经发现了,想要实现 根据域名代理转发 这个功能,其实只需要在 Match 节点中,添加 Hosts 配置即可,是不是非常的简单啊!我们看看实际效果:</p>
<p><img src="https://img2022.cnblogs.com/blog/1897432/202209/1897432-20220921002450001-1578709457.png" alt="" loading="lazy"></p>
<p>&nbsp;</p>
<p>  并且在控制台中,也会产生相应的输出&nbsp;</p>
<p><img src="https://img2022.cnblogs.com/blog/1897432/202209/1897432-20220921002611616-1871914565.png" alt="" loading="lazy"></p>
<p>&nbsp;</p>
<p>&nbsp;  好了,本次介绍到此结束,感谢各位大佬的阅读!</p>
<p>&nbsp;</p>
<p>原文链接:https://www.cnblogs.com/ysmc/p/16714201.html</p>

</div>
<div id="MySignature" role="contentinfo">
    <p>本文来自博客园,作者:一事冇诚,转载请注明原文链接:https://www.cnblogs.com/ysmc/p/16714201.html</p><br><br>
来源:https://www.cnblogs.com/ysmc/p/16714201.html
頁: [1]
查看完整版本: .NET 反向代理-YARP 根据域名转发