In this step Gluer will use the Site configuration from Registry to identify an application matching the requested path
Resolution
Once the Site identified, we have a collection of application configured for this site. An application consist of a configuration and an application version (registered in Registry).
Hence, for a given application, we have the following properties :
- url : Base url of the application in the configured version
- configuration :
- mounting-point : The mounting point of the application to allow direct routing from the navigator to the application.
- static-path-pattern: a regex to specify paths that will be routed by Gluer to the application.
static-path-pattern
is used to route static path, Gluer will rewrite paths from the HTML content of the application by adding a CDN domain name (if CDN is specified), themounting-point
and the version of the application. - path-pattern: a regex to specify paths that will be routed by Gluer to the application.
path-pattern
is used to route dynamic path, Gluer will rewrite paths from the HTML content of the application by adding themounting-point
(and just themounting-point
).
Gluer will go through each application and first check if the mounting-point matches, if it does it will check the (static-)-path-pattern.
If one application is found, the request will be forwarded to it.
Application request
When an application is identified, Gluer will build the proxy request depending on url
and the path from the incoming request.
It will then forward incoming headers and send some others :
Host
header with domain name fromurl
Via: Kobi Gluer
a fixed headerAccept-Language
the resolved locale for this urlConnection: keep-alive
a fixed header to keep alive connectionsX-Forwarded-Proto
scheme of the incoming request (http or https)X-Forwarded-Host
domain name from incoming requestX-Forwaded-Path
the relative URIX-Kobi-Tenant
the resolved tenant for this urlX-Kobi-Backend-Name
the application nameX-Kobi-Device
the device id identified by GluerX-Kobi-Browser
the browser identified by GluerX-Kobi-Site-Id
the site id identified by GluerX-Kobi-Navigation-Mode
the navigation mode LIVE, EDIT or PREVIEW (EDIT and PREVIEW are used with KOBI Designer)X-Kobi-Preview-Mode
the preview mode LIVE or DRAFT for preview with KOBI DesignerX-Kobi-Preview-Date
the preview date for preview with KOBI DesignerX-Kobi-Page-Variation-Id
the page variation to edit with KOBI DesignerX-Kobi-Page-Model-Id
the page model to edit with KOBI DesignerX-Kobi-Resource-Status
the resolved resource status for this requestX-Kobi-Resource-Type
the resolved resource type for this requestX-Kobi-Resource-Id
the resolved resource ID for this requestX-Kobi-Resource-Path
the resolved resource path for this requestX-Kobi-Resource-Scope
the resolved resource scope for this requestX-CSRF-TOKEN
the CSRF token if CSRF is implemented
NavigationContext
class that you can inject in your controllers.