HTTPProxy resource. The example routes one exact path to a dedicated backend and sends all remaining traffic to a default backend.
Overview
Path-based routing lets you split traffic across backends based on the URL path, without changing your application or DNS. At a high level, this setup:- Defines an exact path match for a specific route (e.g.,
/login) - Adds a catch-all prefix rule for all other traffic
- Applies both rules in a single
HTTPProxyresource
Prerequisites
datumctlinstalled and authenticated- A valid Project
Configuration Steps
Step 1: Set Variables
Windows (PowerShell)
macOS / Linux
Step 2: Apply Path Routing Configuration
The/login path is matched exactly. All other requests fall through to the catch-all / rule.
Place the exact match rule before the catch-all. Rules are evaluated in order, and a prefix of / matches everything.
Each rule currently supports only a single backend. Multiple backends per rule are not yet supported.
Windows (PowerShell)
macOS / Linux
Verification
Exact Path Match
auth-origin.example.
Negative Test — Exact Is Truly Exact
/login/reset does not match the Exact /login rule and falls through to the catch-all backend. Verify this to confirm the exact match boundary is working correctly.
Catch-All
web-origin.example.
Cleanup
Windows (PowerShell)
macOS / Linux
Best Practices
- Always include a
PathPrefix /catch-all so no requests are dropped unexpectedly - Place more-specific rules (e.g.,
Exact, longer prefixes) before less-specific ones - Use distinct, descriptive rule
namevalues — they appear in logs and aid debugging - Test both the matching path and a near-miss (e.g.,
/login/reset) to confirm exact boundaries
Summary
- Path-based routing is configured using a
HTTPProxyresource atnetworking.datumapis.com/v1alpha - Use
type: Exactfor single endpoints like/login - Use
type: PathPrefixwith value/as a catch-all for all remaining traffic - Rule order matters — place specific matches before the catch-all