gateway、nginx实现前后端动静分离
程序员文章站
2022-07-10 08:08:11
...
gateway网关:
1.通过路径匹配
#商品服务
- id: product_route
uri: lb://gulimail-product
predicates:
- Path=/api/product/**,/hello
filters:
- RewritePath=/api/(?<segment>.*),/$\{segment}
2.通过host域名匹配
#通过host转发到商品系统
- id: gulimail_host_route
uri: lb://gulimail-product #表示负载均衡到gulimail-product服务
predicates:
- Host=gulimail.com
#通过host转发到search系统
- id: gulimail_search_route
uri: lb://gulimail-search #表示负载均衡到gulimail-search服务
predicates:
- Host=search.gulimail.com
动静分离:
http://search.gulimail.com/ nginx直接代理给网关,网关判断:
如果是/api/****,直接转交给对应的服务器(在本项目中,该路径仅是数据交互的接口)————动
如果是满足域名,转交给对应的服务(给前端返回对应服务的index.html页面)———动
对应的服务器给前端浏览器返回index.html页面后,对页面进行初始化,然后从nginx里面拿静态数据例如图片、js、css文件等———静