How to exclude or ignore special paths or routes from zuul routing

13,556

Solution 1

There is a configuration property called ignored-patterns. With this it is possible to define matchers to exclude routes from routing.

zuul:
    ignoredPatterns:
        - /heartbeat/**
        - /sso/**
    routes:
        contract:
            path: /contracts/**
            url: http://contracts.example.com:8080/api
        audit:
            path: /audits/**
            url: http://audit.example.com:8080
        html:
            path: /**
            url: http://html.example.com:80

Solution 2

As of Brixton.SR6 the ignoredPattern properties should be defined different in the application.yml file. It should be defined as follows:

zuul:
ignoredPatterns: /heartbeat/**, /sso/**
routes:
    contract:
        path: /contracts/**
        url: http://contracts.example.com:8080/api
Share:
13,556
d0x
Author by

d0x

#SOreadytohelp :D

Updated on June 24, 2022

Comments

  • d0x
    d0x about 2 years

    Is it possible to exclude paths or matchers from the Zuul routing?

    The goal is that

    • All requests to /contracts/** are routed to contract.example.com
    • All requests to /audit/** are routed to audit.example.com
    • All requests to /heartbeat/** or /sso/** are served from zuul directly.
    • All other requests (/**) are routed to html.example.com

    I have configuration like this:

    zuul:
        routes:
            contract:
                path: /contracts/**
                url: http://contracts.example.com:8080/api
            audit:
                path: /audits/**
                url: http://audit.example.com:8080
            html:
                path: /**
                url: http://html.example.com:80
    

    Now the question is how to define that /heartbeat and /sso isn't routed to html.example.com by zuul?

    I'm using Spring Boot and its AutoConfiguration.

  • demaniak
    demaniak almost 8 years
    Apparently it is ignoredPatterns, not ignored-patterns
  • Shafiul
    Shafiul over 7 years
    Zuul does not accepts ignoredPatterns values listed as sequence. Its values should be comma separated, like ignoredPatterns: value1, value2, value3 , as it is implemented as LinkedHashSet
  • nerdwaller
    nerdwaller over 7 years
    @Shafiul is correct, this is still true as of Brixton.SR6 release: ignoredPatterns: /foo/**,/bar/**