You are browsing documentation for an older version. See the latest documentation here.
Supported Kong Router Flavors
Kong Gateway (open-source and enterprise edition) includes an expression-based router in versions 3.0 and later. The router can be configured in the following modes:
-
traditional
: uses the pre-3.0 router. -
traditional_compatible
: uses the expression based router, but the router configuration interface remains the same astraditional
. -
expressions
: uses the expression-based router, and expressions must be provided in the router configuration interface.
The compatibilities of router flavors between different Kong Ingress Controller versions and Kong Gateway are shown in the following table. Kong Ingress Controller in versions 2.6.x and lower does not support Kong Gateway 3.0 and later, so the version of Kong Ingress Controller begins at 2.7.x.
Kong Ingress Controller | 2.7.x | 2.8.x | 2.9.x | 2.10.x |
---|---|---|---|---|
Kong 3.x traditional
|
||||
Kong 3.x traditional_compatible
|
(1) | (1) | (1) | (1) |
Kong 3.x expressions
|
(2) |
(1) Most use cases are supported. The incompatible cases comes from the difference of regular expression standards in different routers:
traditional
router accepts PCRE 2 regular expressions, but traditional_compatible
and expressions
routers accepts regular expression in Rust.
The most significant difference is that Regular expressions with a backslash (\
) followed by a non-escaped character (for example, \j
or \/
) in matches of paths or headers
are accepted in traditional
router but not accepted when Kong Gateway 3.x is configured to use the traditional_compatible
router.
(2) Limited support of expression based router (alpha maturity). Please refer to expression router concept page to see detailed status of supporting Kong Gateway with expression router.