Overview
This chart creates Ingress or HTTPRoute resources configured to redirect traffic from source domains to destination URLs without deploying any application containers.Installation
Configuration
Global Configuration
Website Redirects
Define redirect rules:Redirect with Path Preservation
include_path: true, requests like old.example.com/page redirect to https://new.example.com/page.
Example Values
Simple Domain Redirect
Multiple Redirects
Using Gateway API (HTTPRoute)
WWW to Non-WWW Redirect
Development to Production Redirect
Key Parameters
| Parameter | Description | Default |
|---|---|---|
globalConfigs.ingressEnabled | Create Ingress resources | true |
globalConfigs.ingressClassName | Ingress class name | nginx |
globalConfigs.routeEnabled | Create HTTPRoute resources | false |
websites[].source | Source hostname | Required |
websites[].destination | Destination URL/hostname | Required |
websites[].scheme | https or http | Required |
websites[].statusCode | 301 or 302 | Required |
websites[].path | Path to redirect | / |
websites[].include_path | Preserve original path | false |
Redirect Types
Permanent Redirect (301)
Use for permanent moves. Search engines will update their index:Temporary Redirect (302)
Use for temporary moves. Search engines keep the original URL:NGINX Ingress Annotations
The chart uses these NGINX ingress annotations:nginx.ingress.kubernetes.io/permanent-redirect- For 301 redirectsnginx.ingress.kubernetes.io/temporal-redirect- For 302 redirectsnginx.ingress.kubernetes.io/rewrite-target- For path manipulation
Use Cases
- Redirect old domains to new domains
- Redirect www to non-www (or vice versa)
- Redirect HTTP to HTTPS
- Redirect development/staging URLs to production
- Redirect deprecated API endpoints
- Redirect after domain migration
Requirements
- Kubernetes 1.16+
- Helm 3+
- Ingress controller (NGINX recommended) or Gateway API implementation
- DNS configured for source domains
Notes
- No application pods are created - only Ingress/HTTPRoute resources
- TLS certificates must be managed separately (e.g., via cert-manager)
- Each website creates a separate Ingress or HTTPRoute resource
- The source domain must resolve to your cluster’s ingress controller