Skip to content

Commit baa2b2c

Browse files
authored
Merge pull request #5709 from agile6v/master
fix: remove duplicated X-Forwarded-Proto header.
2 parents 24c7766 + e8aaa15 commit baa2b2c

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

rootfs/etc/nginx/template/nginx.tmpl

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,9 @@ http {
376376
{{ end}}
377377
}
378378

379+
{{ end }}
380+
381+
{{ if $cfg.UseForwardedHeaders }}
379382
map $http_x_forwarded_proto $full_x_forwarded_proto {
380383
default $http_x_forwarded_proto;
381384
"" $scheme;
@@ -1190,13 +1193,16 @@ stream {
11901193
{{ $proxySetHeader }} X-Real-IP $remote_addr;
11911194
{{ if and $all.Cfg.UseForwardedHeaders $all.Cfg.ComputeFullForwardedFor }}
11921195
{{ $proxySetHeader }} X-Forwarded-For $full_x_forwarded_for;
1193-
{{ $proxySetHeader }} X-Forwarded-Proto $full_x_forwarded_proto;
11941196
{{ else }}
11951197
{{ $proxySetHeader }} X-Forwarded-For $remote_addr;
11961198
{{ end }}
1199+
{{ if $all.Cfg.UseForwardedHeaders }}
1200+
{{ $proxySetHeader }} X-Forwarded-Proto $full_x_forwarded_proto;
1201+
{{ else }}
1202+
{{ $proxySetHeader }} X-Forwarded-Proto $pass_access_scheme;
1203+
{{ end }}
11971204
{{ $proxySetHeader }} X-Forwarded-Host $best_http_host;
11981205
{{ $proxySetHeader }} X-Forwarded-Port $pass_port;
1199-
{{ $proxySetHeader }} X-Forwarded-Proto $pass_access_scheme;
12001206
{{ if $all.Cfg.ProxyAddOriginalURIHeader }}
12011207
{{ $proxySetHeader }} X-Original-URI $request_uri;
12021208
{{ end }}

test/e2e/settings/forwarded_headers.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,8 @@ var _ = framework.DescribeSetting("use-forwarded-headers", func() {
4747

4848
f.WaitForNginxServer(host,
4949
func(server string) bool {
50-
return strings.Contains(server, "server_name forwarded-headers")
50+
return strings.Contains(server, "server_name forwarded-headers") &&
51+
strings.Contains(server, "proxy_set_header X-Forwarded-Proto $full_x_forwarded_proto;")
5152
})
5253

5354
ginkgo.By("ensuring single values are parsed correctly")
@@ -95,7 +96,8 @@ var _ = framework.DescribeSetting("use-forwarded-headers", func() {
9596

9697
f.WaitForNginxServer(host,
9798
func(server string) bool {
98-
return strings.Contains(server, "server_name forwarded-headers")
99+
return strings.Contains(server, "server_name forwarded-headers") &&
100+
strings.Contains(server, "proxy_set_header X-Forwarded-Proto $pass_access_scheme;")
99101
})
100102

101103
body := f.HTTPTestClient().

0 commit comments

Comments
 (0)