apisix~按域名进行请求转发
路由route
路由(Route)是请求的入口点,它定义了客户端请求与服务之间的匹配规则。路由可以与服务(Service)、上游(Upstream)关联,一个服务可对应一组路由,一个路由可以对应一个上游对象(一组后端服务节点),因此,每个匹配到路由的请求将被网关代理到路由绑定的上游服务中。
如图:

如果前端调用后端接口时,前缀都是/kpi/index时,那apisix就不知道应该选择哪个路由了,这时,我们需要为路由添加域名,,这个域名就是request header中的host,即前端调用apisix-gateway时的域名,这个域名是需要解析到apisix-gateway的。
上游upstream
上游列表包含了已创建的上游服务(即后端服务),可以对上游服务的多个目标节点进行负载均衡和健康检查。
上游中指定了你要转发到的后端服务,可以是具体的节点IP+端口,也可以通过服务发现来指定,如kubernetes,nacos,dns等,如图:

路由中按域名转发的必要性
首先,这里的域名是指gateway的域名,一般是前端网站有个域名,然后它在调用后端服务时,会使用apisix-gateway的域名,我们在apisix-gateway的域名可能是多个,按着具体的业务去划分,不好混淆。
如图所示,下面路由中出现的域名,都是gateway按着业务来划分的域名,与具体前端的应用域名没有关系

也就是说,当apisix收到新的请求时,会查看请求头中host的值,如果有匹配的路由,就取出来,再进行path前缀的过滤。
apisix~按域名进行请求转发的更多相关文章
- Apache APISIX 的安装和配置请求转发url匹配
安装apisix套件 创建一个apisix文件夹,在apisix文件夹下再创建一个etcd_data文件夹,用来持久化etcd的数据 在apisix文件夹下 新建3个文件 config.yaml, ...
- nginx实现请求转发
反向代理适用于很多场合,负载均衡是最普遍的用法. nginx 作为目前最流行的web服务器之一,可以很方便地实现反向代理. nginx 反向代理官方文档: NGINX REVERSE PROXY 当在 ...
- 利用IIS应用请求转发ARR实现IIS和tomcat整合共用80端口
现在网上流传的实现iis和tomcat共享80端口的方法是基于isapi_redirect插件实现的, 我的实现方法不同, 原理相似,具有更好的优点. 先说下基于isapi_redirect缺点,ja ...
- nginx学习(2):启动gzip、虚拟主机、请求转发、负载均衡
一.启用gzip gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 2; ...
- java web Servlet学习笔记-2 请求重定向和请求转发的区别
请求转发与请求重定向的区别 请求重定向和转发 1.请求重定向:浏览器的行为(通过响应对象HttpServletResponse来执行) 特点:可以重新定向访问其他Web应用下的资源 浏览器发出了2次请 ...
- 利用nginx 虚拟主机、请求转发实现不同端口web访问
一个服务器上挂一个网站实在是有点浪费:一个服务器上可以放多个网站:可以开启nginx的虚拟主机功能:利用访问的路径或者域名不同访问不同的文件夹:例如: 1.一台服务器上放多个网站使用nginx的配置文 ...
- privoxy自动请求转发到多个网络
有些时候我们需要通过不同的代理访问不同资源,比如某些ip或域名走本地网络,某些ip或域名走不可描述的代理等.当然这只是举个栗子! 我要解决的问题是:我的内网机器没有internet访问权限,但是我的应 ...
- nginx-启动gzip、虚拟主机、请求转发、负载均衡
一.启用gzip 1 gzip on; 2 gzip_min_length 1k; 3 gzip_buffers 4 16k; 4 gzip_http_version ...
- 03 重定向,请求转发,cookie,session
重定向: /* 之前的写法 response.setStatus(302); response.setHeader("Location", "login_success. ...
- Nginx应用-Location路由反向代理及重写策略 请求转发-URL匹配规则 NGINX Reverse Proxy
NGINX Docs | NGINX Reverse Proxy https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/ ...
随机推荐
- 【SpringBoot】日志在项目中的应用
日志的目的: 为了方便日后的运维,快速定位BUG,错误信息等等 日志算是一个救命稻草 pom.xml需要的依赖: <?xml version="1.0" encoding=& ...
- 【Scala】05 对象特性Part2
特质重复继承关系 父类特质 A 子类特质B 继承 A 子类特质C 继承A 类D 继承了 B 又实现了 C class D extends B with C 继承顺序是 D 继承 C 继承 B 继承 A ...
- 《Python数据可视化之matplotlib实践》 源码 第一篇 入门 第四章
图 4.1 import matplotlib import matplotlib.pyplot as plt import numpy as np # 设置matplotlib正常显示中文和负号 m ...
- 使用django-treebeard实现树类型存储与编辑
前言 其实之前做很多项目都有遇到跟树相关的功能,以前都是自己实现的,然后前端很多UI组件库都有Tree组件,套上去就可以用. 不过既然用 Django 了,还是得充分发挥一下生态的优势,但是我找了半天 ...
- nginx实战教程
大纲 为了让大家更快的学会,该博客中的内容录制成了视频课程:马上在线学习 1.什么是nginx Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器. 由 ...
- vue之插槽-slot
1.背景 2.slot简单使用 <!DOCTYPE html> <html lang="en"> <head> <meta charset ...
- DataOps真能“降本增效”?
在各行各业中,越来越多的公司开始重视收集数据,并寻找创新方法来获得真实可行的商业成果,并且愿意投入大量时间和金钱来实现这一目标. 据IDC称,数据和分析软件及云服务市场规模在 2021 年达到了 90 ...
- 自己实现一个自动检测网卡状态,并设置ip地址,源码见文章底部
阅读本文前,请先学习下面几篇文章 <搞懂进程组.会话.控制终端关系,才能明白守护进程干嘛的?> <简简单单教你如何用C语言列举当前所有网口!> <Linux下C语言操作网 ...
- 从0实现基于Linux socket聊天室-多线程服务器模型-1
前言 Socket在实际系统程序开发当中,应用非常广泛,也非常重要.实际应用中服务器经常需要支持多个客户端连接,实现高并发服务器模型显得尤为重要.高并发服务器从简单的循环服务器模型处理少量网络并发请求 ...
- Ubuntu Server 部署 FRP 反向代理
踩坑记录 我使用的配置文件是官方提供的示例配置文件 通过 SSH 访问内网机器,应该没有问题. 第一次我使用 Docker 镜像 snowdreamtech/frps 在服务器上部署 frps,发现始 ...