通过 KONG 的独特 URL 路由

Unique URL routing through KONG

现在我有以下使用 kong 的实现。 我现在的工作:

我能够 curl 通过 kong 所在的主机,并让它根据主机头包含的内容将 api 请求转发到适当的 api 主机。结果也正确返回给我。

我想要做的是使用 api 主机地址进行卷曲并让它通过 kong。我将如何处理这个?我对 api 框架或模式不是很熟悉,希望得到指导。

我希望发生的事情:

但是这样做你将失去空的好处。根据我的说法,我们正在添加 kong 以控制对 API 的访问。如果您直接调用托管 API 的地方,那么 Kong 将无法提供这些好处。

对于你的问题,如果你不想在 header 中传递主机,你可以在将 API 添加到 kong 时将主机添加到 kong。这样一来,每当请求到达 api_x_command 时,它将转到 kong 环境中定义的主机。

因此您的网址将像这样

https://kongurl/api_1_command - will go to https://api_1_host/api_1_command and https://kongurl/api_2_command - will go to https://api_2_host/api_2_command

检查url,它将始终指向 Kong,命令将是决定因素,在 Kong 中完成主机设置。

针对你的问题。最好通过 kong(而不是直接访问您的服务 IP)。这样您就可以只向外界公开 kong 的 ipAddress,并获得 kong 提供的所有好处。如果您非常担心安全性,请在 kong 后面添加代理,这样即使 kong 也不会暴露。

客户端 <--> 代理 <--> Kong <--> Service1..N

我刚接触香港。所以如果我回答错了,请告诉我。请指正。

顺便说一句,还有一点:对于每个请求,如果您不想设置 "Host" header 那么实现此目的的最佳方法是在配置时不设置 "hosts"一条路线。这样对于每个请求客户端不需要设置 "Host" header。这在某些情况下会很有用。

https://discuss.konghq.com/t/setup-for-one-service-without-host-header/805