> HTTP Redirect 指的是将请求到原目标服务的流量重定向到给另外一个目标服务,客户端请求时不用更改任何方式从而访问到重定向后的目标服务。
#### 什么场景需要用到重定向
例如当前使用的服务发生的变更,需要到新的服务才可以提供访问,在不更变用户原始请求的情况下,通过重定向就可以很好的去解决了这个问题。
#### 通过例子来理解
对于httpd-service 匹配到前缀是 /check 的请求都会被重定向到 nginx-service 的 /api/health
apiVersion networking.istio.io/v1alpha3 kind VirtualService metadata name web-vs spec hosts httpd-service httpmatchuri prefix /test redirect uri /api/health authority nginx-service
和Redirect规则稍有不同的是,Redirect的uri只能替换全部的Path,Rewrite的uri是可以重写前缀的,即如果原来匹配条件是前缀匹配,则修改后只修改匹配到的前缀。