Skip to content

Commit b1cdb27

Browse files
committed
remove redirect filter header modification
1 parent 8f35ab7 commit b1cdb27

File tree

3 files changed

+9
-74
lines changed

3 files changed

+9
-74
lines changed

charts/nginx-gateway-fabric/values.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ nginx:
103103
# type: "cidr",
104104
# }
105105
# ]
106-
# setIPRecursively: true
106+
# setIPRecursively: true
107107
# telemetry:
108108
# exporter:
109109
# endpoint: otel-collector.default.svc:4317

internal/mode/static/nginx/config/servers.go

+8-26
Original file line numberDiff line numberDiff line change
@@ -800,7 +800,14 @@ func generateProxySetHeaders(filters *dataplane.HTTPFilters, grpc bool) []http.H
800800
copy(headers, grpcBaseHeaders)
801801
}
802802

803-
setHeaderForHTTPSRedirect(filters, headers)
803+
if filters != nil && filters.RequestURLRewrite != nil && filters.RequestURLRewrite.Hostname != nil {
804+
for i, header := range headers {
805+
if header.Name == "Host" {
806+
headers[i].Value = *filters.RequestURLRewrite.Hostname
807+
break
808+
}
809+
}
810+
}
804811

805812
if filters == nil || filters.RequestHeaderModifiers == nil {
806813
return headers
@@ -829,31 +836,6 @@ func generateProxySetHeaders(filters *dataplane.HTTPFilters, grpc bool) []http.H
829836
return append(proxySetHeaders, headers...)
830837
}
831838

832-
func setHeaderForHTTPSRedirect(filters *dataplane.HTTPFilters, headers []http.Header) {
833-
if filters == nil {
834-
return
835-
}
836-
837-
if filters.RequestURLRewrite != nil && filters.RequestURLRewrite.Hostname != nil {
838-
for i, header := range headers {
839-
if header.Name == "Host" {
840-
headers[i].Value = *filters.RequestURLRewrite.Hostname
841-
break
842-
}
843-
}
844-
}
845-
if filters.RequestRedirect != nil &&
846-
filters.RequestRedirect.Scheme != nil &&
847-
*filters.RequestRedirect.Scheme == http.HTTPSScheme {
848-
for i, header := range headers {
849-
if header.Name == "X-Forwarded-Proto" {
850-
headers[i].Value = http.HTTPSScheme
851-
return
852-
}
853-
}
854-
}
855-
}
856-
857839
func generateResponseHeaders(filters *dataplane.HTTPFilters) http.ResponseHeaders {
858840
if filters == nil || filters.ResponseHeaderModifiers == nil {
859841
return http.ResponseHeaders{}

internal/mode/static/nginx/config/servers_test.go

-47
Original file line numberDiff line numberDiff line change
@@ -2681,53 +2681,6 @@ func TestGenerateProxySetHeaders(t *testing.T) {
26812681
},
26822682
},
26832683
},
2684-
{
2685-
msg: "request redirect filter with https scheme",
2686-
filters: &dataplane.HTTPFilters{
2687-
RequestRedirect: &dataplane.HTTPRequestRedirectFilter{
2688-
Scheme: helpers.GetPointer("https"),
2689-
},
2690-
},
2691-
expectedHeaders: []http.Header{
2692-
{
2693-
Name: "Host",
2694-
Value: "$gw_api_compliant_host",
2695-
},
2696-
{
2697-
Name: "X-Forwarded-For",
2698-
Value: "$proxy_add_x_forwarded_for",
2699-
},
2700-
{
2701-
Name: "Upgrade",
2702-
Value: "$http_upgrade",
2703-
},
2704-
{
2705-
Name: "Connection",
2706-
Value: "$connection_upgrade",
2707-
},
2708-
{
2709-
Name: "X-Real-IP",
2710-
Value: "$remote_addr",
2711-
},
2712-
{
2713-
Name: "X-Forwarded-Proto",
2714-
Value: "https",
2715-
},
2716-
{
2717-
Name: "X-Forwarded-Host",
2718-
Value: "$host",
2719-
},
2720-
{
2721-
Name: "X-Forwarded-Port",
2722-
Value: "$server_port",
2723-
},
2724-
},
2725-
},
2726-
{
2727-
msg: "no filter set",
2728-
expectedHeaders: httpBaseHeaders,
2729-
GRPC: false,
2730-
},
27312684
}
27322685

27332686
for _, tc := range tests {

0 commit comments

Comments
 (0)