frp使用不同子域名映射本地的多个服务

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了frp使用不同子域名映射本地的多个服务相关的知识,希望对你有一定的参考价值。

参考技术A 【服务端配置】

[common]

bind_port =7000  #绑定的IP

vhost_http_port =7008#监听的IP

【本地配置】

[common]

server_addr =120.24.*.*  #服务端IP地址

server_port =7000  #服务端绑定的端口

[admin]  #本地服务1

type = http

local_port =9002 #本地端口

custom_domains = admin.597zx.com  #子域名1

[api] #本地服务2

type = http

local_port =9001  #本地端口

custom_domains = api.597zx.com#子域名2

[io] #本地服务3

type = http

local_port =9000  #本地端口

custom_domains = io.597zx.com #子域名3

是否可以将完整的 Uris 映射到不同的服务?

【中文标题】是否可以将完整的 Uris 映射到不同的服务?【英文标题】:Is it possible to map full Uris to different services? 【发布时间】:2021-07-13 18:17:22 【问题描述】:

我想创建多个可以独立部署到 AKS 的 GraphQL 微服务,然后利用 GraphQL 联合网关来公开复合图。我想知道是否可以超越子域来分离出匹配的 URI。

https://graph.xyzcorp.com/ -- GraphQL Gateway
https://graph.xyzcorp.com/Microservice Name -- GraphQL Microservice

我真的不想使用多个子域或不同的子域名,例如https://customer.graph.xyzcorp.com/https://customergraph.xyzcorp.com/ 等。我也不想将所有微服务组合到一个项目中,因为那样会创建又是一块巨石。

【问题讨论】:

【参考方案1】:

您目前拥有的是正确的实现。 您拥有网关,并且所有微服务都映射(注册)到网关。

仅将所有微服务映射到网关不会使您的应用程序变得单一,因为网关只是您应用程序的入口点。

我建议在定义微服务合同时(可能是大摇大摆的),您可以像下面这样提及基本路径和端点路径。

basepath:: 域名/version1.0

希望对你有所帮助。

path::microserviceName/customer/id

【讨论】:

以上是关于frp使用不同子域名映射本地的多个服务的主要内容,如果未能解决你的问题,请参考以下文章

将本地端口映射子域名

将本地端口映射子域名

二十八:视图之主域名和子域名的实现

我可以为每个子域使用不同的邮件服务器吗?

什么是子域名?如何设置子域名解析?

自己购买的域名如何设置子域名,如何设置访问多个项目,万网