首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Rails:通过Kong (Heroku)转发的请求没有路由匹配错误

Rails是一种基于Ruby语言的开发框架,用于构建Web应用程序。它提供了一套丰富的工具和库,简化了开发过程,并遵循了MVC(模型-视图-控制器)架构模式。

Kong是一个开源的云原生API网关,它可以用于管理、监控和扩展API流量。Heroku是一个云平台,用于部署、管理和扩展应用程序。

当通过Kong (Heroku)转发请求时,可能会出现路由匹配错误的情况。这通常是由于以下原因导致的:

  1. 路由配置错误:Kong的路由配置可能与Rails应用程序的路由配置不匹配。在这种情况下,需要检查Kong的路由配置,确保它与Rails应用程序的路由配置一致。
  2. Kong代理配置错误:Kong作为一个代理服务器,可能需要正确配置才能将请求正确地转发到Rails应用程序。需要检查Kong的代理配置,确保它正确地指向Rails应用程序的地址和端口。
  3. 请求格式错误:Kong转发的请求可能不符合Rails应用程序所期望的格式。在这种情况下,需要检查请求的参数、头部和主体,确保它们符合Rails应用程序的要求。

为了解决这个问题,可以采取以下步骤:

  1. 检查Kong的路由配置,确保它与Rails应用程序的路由配置一致。
  2. 检查Kong的代理配置,确保它正确地指向Rails应用程序的地址和端口。
  3. 检查请求的参数、头部和主体,确保它们符合Rails应用程序的要求。

如果以上步骤都没有解决问题,可以尝试以下方法:

  1. 更新Rails应用程序的路由配置,确保它与Kong的路由配置一致。
  2. 检查Rails应用程序的日志,查看是否有其他错误信息提供线索。
  3. 联系Kong和Heroku的支持团队,寻求他们的帮助和建议。

腾讯云提供了一系列与云计算相关的产品,包括云服务器、云数据库、云存储等。具体推荐的产品和产品介绍链接地址可以根据实际需求和情况来确定。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

微服务架构开发实战:API网关意义和常见API网关实现方式

路由:是API网关很核心模块功能,此模块实现根据请求锁定目标微服务,并将请求进行转发。...} 当寻找一个虚拟服务器名称时,如果指定名称匹配多个变量,如通配符和正则表达式都匹配,将会按照以下顺序选择第一个匹配变量。 精确名称。...动态路由:以动态方式根据需要将请求路由至不同后端集群处。 压力测试:逐渐增加指向集群负载流量,从而计算性能水平。 负载分配:为每一种负载类型分配对应容量,并弃用超出限定值请求。...Kong 另外一个强大之处在于提供了大量插件来扩展应用,通过设置不同插件,可以为服务提供各种增强功能。Kong 插件平台可以访问 https://konghq.com/pluginsl。...本篇文章内容给大家讲解是API网关意义和常见API网关实现方式 下篇文章给大家讲解如何集成 Zuul和实现API网关; 觉得文章不错朋友可以转发此文关注小编; 感谢大家支持 本文就是愿天堂没有

1.3K20

Kong入门学习实践(3)路由转发

关于路由转发 路由转发是Nginx等代理软件最常见使用场景,对于这类应用层路由转发,通常相对传输层路由转发(例如LVS)来说能够解析出更多信息,从而做出更加灵活路由决策。...对于Kong来说,我们需要先添加一个服务和路由信息,当一个请求到达Kong网关之后要先进行路由匹配匹配后再将请求转发路由匹配服务上。...NOTE:一个服务可以配置多个路由 配置服务 配置服务和和路由由两种方式:一种是通过Kong Admin API,另一种则是通过Konga可视化操作。...其次,在浏览器中进行验证:http://sample.order-api.com:8000/api/orders 这里通过Host方式指向Kong网关代理端口8000,Kong网关帮我们做了路由转发...最后,如果配置了目标节点但是节点状态为Unhealthy,在测试验证时会返回以下错误信息: 它表示Kong无法从环形均衡器中获取到有效上游服务器目标节点。

49040

Kong入门学习实践(5)API网关路由转发

本篇,我们学习快速配置一个最常见基本功能:API网关场景下路由转发。...API网关路由需求 在API网关需求场景中,我们需要路由转发往往是下面这个样子: 我们会用API网关作为上游所有API服务入口,即前端只会通过API网关来调用各个不同API,各个API服务之间通过路由前缀区分...例如,当客户端请求 api.edisontalk.cn/order/api/health 接口时,Kong会将/order路由路径所有请求转发到上游Order API,相当于请求是Order API...当请求 api.edisontalk.cn/stock/api/health 接口时,Kong则会将/stock路由路径所有请求转发到上游Stock API,相当于请求是Stock API/api...(2)Preserve Host:这里选择No,表示Kong不将客户端请求Host带到上游服务器。 (3)Protocols:这里取消https,因为我们并没有配ssl证书。

60720

物联网网关神器 Kong ( 四 )- 利用 Konga 来配置生产环境安全连接 Kong

其本意为我们自定义上游服务,可以通过 Kong路由抽象( Route )来对一个请求进行转发通过 Kong 插件机制 ( Plugins )进行处理。...下面我们将展示如何创建一个 Route 属性详解: Name:Route 名字 Tags:为该路由打上标签,便于通过 tag 来区分。 Hosts:路由匹配域名,可填写多个。...( 填写后要按回车才会记录数据 ) Paths:路由匹配域名路径。 Headers:路由匹配 HTTP 请求 header 内携带参数。...Path handling:用于控制代理服务时候如何转发请求路径。...则当 Kong 接受到该请求转发时会将该路径改变为 => /user Preserve Host:是否将请求 host 保留 Protocols:接受协议。

2.6K10

Kong网关介绍

和Ring-Balancer两种均衡模式 Kong会代理HTTP请求,根据HTTP主机头、请求URI和请求方式(GET/POST等)匹配路由规则,找到实际处理请求后端服务 Kong插件支持裁剪添加插件...access_by_lua* kong在这里对请求进行路由匹配,找到后端upstream服务节点。...请求可能会产生TCP错误,超时或产生HTTP状态代码。...Kong时,都会检查提供凭据(取决于身份验证类型),如果请求无法验证,它将阻止请求,或者在header中添加使用者和凭据详细信息并转发请求。...error:用于记录导致请求被停止错误(例如,获取HTTP 500错误)。需要监控此类日志速率。 crit:当Kong在紧急条件下工作而不能正常工作从而影响多个客户时,使用此级别。

4.4K20

API 网关 kong 实战

HTTPS请求,并转发到后台系统 :8001 通过HTTP协议提供管理功能API (Admin API) :8444 通过HTTPS协议提供管理功能API 这些端口可以在**/etc/kong/kong.conf...我用到path有几个 route中paths参数,表示符合这些请求路径要发到route对应service中 route中strip_path 参数,决定kong转发给后端时候是否保留源请求用于路由匹配路径...service中path参数,上面的例子没有配置,默认为null,kong转发请求时会把这个作为前缀加上 假设网关以/api为路由请求转发给nodedemo(即route.paths = ['/api...5.3 wildcard域名匹配 kong同样可以基于域名把请求转发到不同服务,比如a.example.com转发到服务A,b.example.com转发到服务B;同时kong还支持通配域名,比如*..../c/等没有配置过路由域名可以匹配

3.6K20

API网关从零实现-Golang篇

引言想必大家应该都有用过API网关,简单说,API网关就像一个代理转发站,统一接收不同来源请求,并将它们精准地送到目的地。...不过这里路由匹配过于简陋,我们可以做更灵活,实际上API网关需要多维度、灵活、高效路由匹配,目前业界通常采用前缀树算法实现路由匹配,像gin框架、api2go框架均有使用,这里有开源组件:github.com...当请求过来时,路由匹配通过解析当前请求信息(url、host、query等),并基于网关管理端配置规则,获得本次请求所要转发地址上。...匹配器在发现匹配后端服务是多节点时候,会基于设置负载均衡策略和多节点元数据配置,获取到其中一个节点作为最终目的地址进行转发。...worker呢,kong网关通过基于nginx共享内存事件发布-订阅机制实现。

44510

.Net微服务实战之负载均衡(下)

,调用端会通过RPC框架请求Fabio,Fabio会从Consul获取健康地址请求转发。   ...顾名思义,就是我们自己定义上游服务,通过Kong匹配到相应请求转发地方, Service 可以与下面的Route进行关联,一个Service可以有很多Route,匹配Route就会转发到Service...Service服务,通过Kong匹配到相应请求转发地方(eg: 理解nginx 配置文件中server),等同于下面nginx配置: http { server { listen...实体定义匹配客户端请求规则. 每个路由都与一个服务相关联,而服务可能有多个与之相关联路由. 每一个匹配给定路线请求都将被提交给它相关服务。...怎么让请求路由到对应服务,这也是大多数初学微服务相对比较难啃一道。

55740

Kong网关:入门、实战与进阶-重读

它们允许通过传入IP地址和端口号列表来匹配路由。两个属性不同点在于一个是匹配源地址,一个是匹配目标地址。...例如,TLS连接SNI扩展名匹配snis字段时,请求匹配路由 SNI指示不能在TLS连接建立后修改 多SNI支持 snis属性中可以指定多个SNI,匹配任何一个即可满足路由条件,实现“或”关系 虽然理论上可以随意配置...在TLS连接SNI扩展名中设置主机名若能匹配snis属性中字段,则该请求可以匹配路由。如前所述,SNI路由不仅适用于TLS,还适用于TLS上承载其他协议,例如HTTPS。...这意味着在执行路由匹配时,无论请求头中host字段是什么,复用相同keepalive连接多个请求将具有相同SNI主机名。...最常见鉴权是对服务进行身份校验,并且不允许任何未经身份验证请求通过。鉴权插件通用方案如下。 1)配置服务和路由实体,验证代理请求是否通过

2.7K10

kong 简明介绍「建议收藏」

一个服务(Service)可以有多个路由(Route)。 此图说明了通过服务路由到后端 API 请求和响应流。...验证路由是否将请求转发到服务: curl -i -X GET http://:8000/mock/request 1.3 总结和后续步骤 Added a Service...这意味着如果一个 HTTP 请求被发送到端口 8000(代理端口)上Kong Gateway节点,并且它匹配路由 /mock,那么该请求将被发送到 http://mockbin.org。...在没有速率限制情况下,每个用户可以随意请求,这可能导致请求激增,从而使其他消费者感到饥饿。启用速率限制后,API 调用被限制为每秒固定数量请求。...上游(Upstream)对象指的是位于Kong Gateway后面的上游API/服务,客户端请求转发到该API/服务。

1.9K30

深入理解 Nginx 与 Kong 配置与实践

这篇文章将深入探讨如何通过 Nginx 配置实现服务负载均衡,同时如何利用 Kong API 网关管理微服务,包括但不限于服务发现、路由、和负载坐标。...server: 监听客户端请求配置。location: 匹配请求URI,并定义处理请求配置。proxy_pass: 指定请求转发后端服务群组。...对应就是以上 proxy_pass http://pay-service; 这一行配置routeroute 对应路由,它负责匹配实际请求,映射到 service 中。...:5501 127.0.0.1:5502 127.0.0.1:5503 这三个节点二、使用 Kong 进行服务管理Kong 是一个云原生、快速、可扩展微服务抽象层(API 网关),用于管理微服务请求路由...,当用户请求 /paymanger 时,Kong 会映射这个请求到 payment-service,并通过 upstream pay-service 实现负载均衡。

200

Kong 优雅实现微服务网关鉴权,登录场景落地实战篇

客户端如果可以直接向每个微服务发送请求,其问题主要如下: 客户端需求和每个微服务暴露细粒度 API 不匹配。...因此,我们认为Kong是微服务架构典范:它核心是实现数据库抽象,路由和插件管理。插件可以存在于单独代码库中,并且可以在几行代码中注入到请求生命周期任何位置。...服务示例包括数据转换微服务、计费API等。 Route : 这是指 Kong 路由实体。Route 是进入 Kong 入口点,并为要匹配请求定义规则,然后路由到给定服务。...插件可以通过管理 API 进行配置——可以是全局(所有传入流量),也可以是在特定路由和服务上配置。...,流量打到这边鉴权之后不同路由转发到 k8s 不同 service 里调用具体服务。

1.1K20

云原生架构下 API 网关实践: Kong (二)

当使用单体应用程序架构时,客户端(Web 或移动端)通过向后端应用程序发起一次 REST 调用来获取数据。负载均衡器将请求路由给 N 个相同应用程序实例中一个。...客户端可以直接向每个微服务发送请求,其问题主要如下: 客户端需求和每个微服务暴露细粒度 API 不匹配。 部分服务使用协议不是Web友好协议。...Kong 提供了管理接口,我们可以通过请求 8001 管理接口直接创建,也可以通过安装管理界面,实现效果是一样。...创建路由 创建好服务之后,我们需要创建具体 API 路由路由请求转发规则,根据 Hostname 和 PATH,将请求转发。...创建好路由之后,我们就可以访问 /api/blog。 ? Kong 默认通过 8000 端口处理代理请求

2K10

云原生架构下 API 网关实践:Kong (一)

Nginx 由内核和模块组成,内核设计非常微小和简洁,完成工作也非常简单,仅仅通过查找配置文件与客户端请求进行 URL 匹配,用于启动不同模块去完成相应工作。...审查与监控:与边缘位置追踪有意义数据和统计结果,从而带来精确生产视图。 动态路由:动态地将请求路由到不同后端集群。 压力测试:逐渐增加指向集群流量,以了解性能。...负载分配:为每一种负载类型分配对应容量,并弃用超出限定值请求。 静态响应处理:在边缘位置直接建立部分响应,从而避免其转发到内部集群。...通过前置负载均衡配置把请求均匀地分发到各个 Server,来应对大批量网络请求。 ? Kong 主要有三个组件: Kong Server :基于nginx服务器,用来接收 API 请求。...Kong 网关具有以下特性: 可扩展性: 通过简单地添加更多服务器,可以轻松地进行横向扩展,这意味着您平台可以在一个较低负载情况下处理任何请求; 模块化: 可以通过添加新插件进行扩展,这些插件可以通过

2.4K11

国产最强开源 API 网关,没有之一,不接受任何反驳!

请求变形」 - 在进一步转发之前,能够在转发之前转换请求和响应(包括 Header 和 Body)。...使用容器把 ngnix 和后端四个服务部署在同一个网络下,通过网关连接路由转发。...Nginx 网关测试结果如下: nginx网关性能测试 每秒处理请求数量是 1093,和不通过网关转发相比非常接近。...虽然仅通过 NGINX 配置就可以实现某些 Kong 功能(例如,基于请求 URL 确定上游请求路由),但修改该配置需要一定级别的操作系统访问权限,以编辑配置文件并要求 NGINX 重新加载它们,而...由于 Kong 请求路由和处理配置是通过其 admin API 控制,因此可以在不编辑底层 NGINX 配置情况下即时添加和删除插件配置,因为 Kong 本质上提供了一种在 API 中注入位置块(

3.3K00

Kong入门学习实践(7)灰度发布与蓝绿部署

对于同一个路由路径,如果加上了指定Header,就会被转发到灰度版本上游服务中。...选项,这里我们添加了一个Headers匹配,只有当Headers中有canary:true时候,才能匹配到这条路由,才能转发到灰度版本中。...(4)验证测试 这里我们借助PostMan来进行一个简单验证测试,首先,在不带Header情况下会转发到原有版本: 其次,在带了指定Header值情况下会转发到灰度版本: 基于服务权重流量切分...根据基于服务权重流量切分方式约定,适用于蓝绿部署,权重范围 0 - 100 按百分比将请求路由到指定不同版本上游服务。...权重为 0 意味着该金丝雀规则不会向 灰度版本 服务发送任何请求。权重为 100 意味着所有请求都将被发送到 灰度版本。

53040

Kong 1.3 发布:原生 gRPC 代理、上游 TLS 交叉认证

路由和服务条目的协议属性现在可以设置为 grpc 或 grpcs,这对应于通过明文 HTTP/2(h2c) gRPC 和通过 TLS HTTP/2(h2) gRPC。...更高安全性。 通过提供可信证书,上游服务将确定传入请求是由 Kong 转发,而不是恶意客户端。 更简单合规性。 开发者友好。...此外,Kong 1.3 还开源了 Sessions 插件,此前它仅在 Kong Enterprise 中提供,该插件结合其它身份验证插件,允许 Kong 记住之前已经过验证浏览器用户。...并且由于 LuaJIT 编译器生成更多原生代码,OpenResty 更有效地存储请求上下文数据,因此在密钥身份验证基线代理基准测试中,Kong 现在运行速度提高约 10%。 ?...此版本还带来了更多更新内容,包括 Kong 路由器现在能够通过任何请求头(不仅是主机)匹配路由、新添加 CLI 命令可用于创建数据库内容转储到 YAML 文件中等,详情查看发布公告。

85410
领券