16.重写Location头信息

如果Zuul面对的是web应用,当web应用通过HTTP的3XX状态码来重定向时,您可能需要重写Location头信息。否则,浏览器将重定向到web应用的URL,而不是Zuul URL。您可以配置Zuul过滤器LocationRewriteFilterLocation头信息重写为Zuul的URL。另外它还添加了特定于路由的前缀。以下示例使用Spring Configuration文件添加过滤器:

import org.springframework.cloud.netflix.zuul.filters.post.LocationRewriteFilter;
...

@Configuration
@EnableZuulProxy
public class ZuulConfig {
    @Bean
    public LocationRewriteFilter locationRewriteFilter() {
        return new LocationRewriteFilter();
    }
}

警告
使用这个过滤器时一定要谨慎。这个过滤器作用于所有3XX响应码的Location头信息,可能不适用于所有场景,例如将用户重定向到外部URL时。