Fix custom headers template
This commit is contained in:
parent
8f982ff1f2
commit
e3d1201b46
|
@ -350,30 +350,33 @@ var _templatesDockerTmpl = []byte(`{{$backendServers := .Servers}}
|
||||||
{{if hasIsDevelopmentHeaders $container}}
|
{{if hasIsDevelopmentHeaders $container}}
|
||||||
IsDevelopment = {{getIsDevelopmentHeaders $container}}
|
IsDevelopment = {{getIsDevelopmentHeaders $container}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasAllowedHostsHeaders $container}}
|
||||||
|
AllowedHosts = [{{range getAllowedHostsHeaders $container}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasHostsProxyHeaders $container}}
|
||||||
|
HostsProxyHeaders = [{{range getHostsProxyHeaders $container}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
|
||||||
{{if hasRequestHeaders $container}}
|
{{if hasRequestHeaders $container}}
|
||||||
[frontends."frontend-{{$frontend}}".headers.customRequestHeaders]
|
[frontends."frontend-{{$frontend}}".headers.customRequestHeaders]
|
||||||
{{range $k, $v := getRequestHeaders $container}}
|
{{range $k, $v := getRequestHeaders $container}}
|
||||||
{{$k}} = "{{$v}}"
|
{{$k}} = "{{$v}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
{{if hasResponseHeaders $container}}
|
{{if hasResponseHeaders $container}}
|
||||||
[frontends."frontend-{{$frontend}}".headers.customResponseHeaders]
|
[frontends."frontend-{{$frontend}}".headers.customResponseHeaders]
|
||||||
{{range $k, $v := getResponseHeaders $container}}
|
{{range $k, $v := getResponseHeaders $container}}
|
||||||
{{$k}} = "{{$v}}"
|
{{$k}} = "{{$v}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasAllowedHostsHeaders $container}}
|
|
||||||
[frontends."frontend-{{$frontend}}".headers.AllowedHosts]
|
|
||||||
{{range getAllowedHostsHeaders $container}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasHostsProxyHeaders $container}}
|
|
||||||
[frontends."frontend-{{$frontend}}".headers.HostsProxyHeaders]
|
|
||||||
{{range getHostsProxyHeaders $container}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasSSLProxyHeaders $container}}
|
{{if hasSSLProxyHeaders $container}}
|
||||||
[frontends."frontend-{{$frontend}}".headers.SSLProxyHeaders]
|
[frontends."frontend-{{$frontend}}".headers.SSLProxyHeaders]
|
||||||
{{range $k, $v := getSSLProxyHeaders $container}}
|
{{range $k, $v := getSSLProxyHeaders $container}}
|
||||||
|
@ -549,6 +552,16 @@ var _templatesKubernetesTmpl = []byte(`[backends]{{range $backendName, $backend
|
||||||
PublicKey = "{{$frontend.Headers.PublicKey}}"
|
PublicKey = "{{$frontend.Headers.PublicKey}}"
|
||||||
ReferrerPolicy = "{{$frontend.Headers.ReferrerPolicy}}"
|
ReferrerPolicy = "{{$frontend.Headers.ReferrerPolicy}}"
|
||||||
IsDevelopment = {{$frontend.Headers.IsDevelopment}}
|
IsDevelopment = {{$frontend.Headers.IsDevelopment}}
|
||||||
|
{{if $frontend.Headers.AllowedHosts}}
|
||||||
|
AllowedHosts = [{{range $frontend.Headers.AllowedHosts}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
{{if $frontend.Headers.HostsProxyHeaders}}
|
||||||
|
HostsProxyHeaders = [{{range $frontend.Headers.HostsProxyHeaders}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
{{if $frontend.Headers.CustomRequestHeaders}}
|
{{if $frontend.Headers.CustomRequestHeaders}}
|
||||||
[frontends."{{$frontendName}}".headers.customrequestheaders]
|
[frontends."{{$frontendName}}".headers.customrequestheaders]
|
||||||
{{range $k, $v := $frontend.Headers.CustomRequestHeaders}}
|
{{range $k, $v := $frontend.Headers.CustomRequestHeaders}}
|
||||||
|
@ -561,18 +574,6 @@ var _templatesKubernetesTmpl = []byte(`[backends]{{range $backendName, $backend
|
||||||
{{$k}} = "{{$v}}"
|
{{$k}} = "{{$v}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if $frontend.Headers.AllowedHosts}}
|
|
||||||
[frontends."{{$frontendName}}".headers.AllowedHosts]
|
|
||||||
{{range $frontend.Headers.AllowedHosts}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if $frontend.Headers.HostsProxyHeaders}}
|
|
||||||
[frontends."{{$frontendName}}".headers.HostsProxyHeaders]
|
|
||||||
{{range $frontend.Headers.HostsProxyHeaders}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if $frontend.Headers.SSLProxyHeaders}}
|
{{if $frontend.Headers.SSLProxyHeaders}}
|
||||||
[frontends."{{$frontendName}}".headers.SSLProxyHeaders]
|
[frontends."{{$frontendName}}".headers.SSLProxyHeaders]
|
||||||
{{range $k, $v := $frontend.Headers.SSLProxyHeaders}}
|
{{range $k, $v := $frontend.Headers.SSLProxyHeaders}}
|
||||||
|
@ -802,84 +803,87 @@ var _templatesMarathonTmpl = []byte(`{{$apps := .Applications}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers]
|
[frontends."{{ getFrontendName $app $serviceName }}".headers]
|
||||||
{{if hasSSLRedirectHeaders $app $serviceName}}
|
{{if hasSSLRedirectHeaders $app $serviceName}}
|
||||||
SSLRedirect = {{getSSLRedirectHeaders $app $serviceName}}
|
SSLRedirect = {{getSSLRedirectHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSSLTemporaryRedirectHeaders $app $serviceName}}
|
{{if hasSSLTemporaryRedirectHeaders $app $serviceName}}
|
||||||
SSLTemporaryRedirect = {{getSSLTemporaryRedirectHeaders $app $serviceName}}
|
SSLTemporaryRedirect = {{getSSLTemporaryRedirectHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSSLHostHeaders $app $serviceName}}
|
{{if hasSSLHostHeaders $app $serviceName}}
|
||||||
SSLHost = "{{getSSLHostHeaders $app $serviceName}}"
|
SSLHost = "{{getSSLHostHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSTSSecondsHeaders $app $serviceName}}
|
{{if hasSTSSecondsHeaders $app $serviceName}}
|
||||||
STSSeconds = {{getSTSSecondsHeaders $app $serviceName}}
|
STSSeconds = {{getSTSSecondsHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSTSIncludeSubdomainsHeaders $app $serviceName}}
|
{{if hasSTSIncludeSubdomainsHeaders $app $serviceName}}
|
||||||
STSIncludeSubdomains = {{getSTSIncludeSubdomainsHeaders $app $serviceName}}
|
STSIncludeSubdomains = {{getSTSIncludeSubdomainsHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSTSPreloadHeaders $app $serviceName}}
|
{{if hasSTSPreloadHeaders $app $serviceName}}
|
||||||
STSPreload = {{getSTSPreloadHeaders $app $serviceName}}
|
STSPreload = {{getSTSPreloadHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasForceSTSHeaderHeaders $app $serviceName}}
|
{{if hasForceSTSHeaderHeaders $app $serviceName}}
|
||||||
ForceSTSHeader = {{getForceSTSHeaderHeaders $app $serviceName}}
|
ForceSTSHeader = {{getForceSTSHeaderHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasFrameDenyHeaders $app $serviceName}}
|
{{if hasFrameDenyHeaders $app $serviceName}}
|
||||||
FrameDeny = {{getFrameDenyHeaders $app $serviceName}}
|
FrameDeny = {{getFrameDenyHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasCustomFrameOptionsValueHeaders $app $serviceName}}
|
{{if hasCustomFrameOptionsValueHeaders $app $serviceName}}
|
||||||
CustomFrameOptionsValue = "{{getCustomFrameOptionsValueHeaders $app $serviceName}}"
|
CustomFrameOptionsValue = "{{getCustomFrameOptionsValueHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasContentTypeNosniffHeaders $app $serviceName}}
|
{{if hasContentTypeNosniffHeaders $app $serviceName}}
|
||||||
ContentTypeNosniff = {{getContentTypeNosniffHeaders $app $serviceName}}
|
ContentTypeNosniff = {{getContentTypeNosniffHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasBrowserXSSFilterHeaders $app $serviceName}}
|
{{if hasBrowserXSSFilterHeaders $app $serviceName}}
|
||||||
BrowserXSSFilter = {{getBrowserXSSFilterHeaders $app $serviceName}}
|
BrowserXSSFilter = {{getBrowserXSSFilterHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasContentSecurityPolicyHeaders $app $serviceName}}
|
{{if hasContentSecurityPolicyHeaders $app $serviceName}}
|
||||||
ContentSecurityPolicy = "{{getContentSecurityPolicyHeaders $app $serviceName}}"
|
ContentSecurityPolicy = "{{getContentSecurityPolicyHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasPublicKeyHeaders $app $serviceName}}
|
{{if hasPublicKeyHeaders $app $serviceName}}
|
||||||
PublicKey = "{{getPublicKeyHeaders $app $serviceName}}"
|
PublicKey = "{{getPublicKeyHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasReferrerPolicyHeaders $app $serviceName}}
|
{{if hasReferrerPolicyHeaders $app $serviceName}}
|
||||||
ReferrerPolicy = "{{getReferrerPolicyHeaders $app $serviceName}}"
|
ReferrerPolicy = "{{getReferrerPolicyHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasIsDevelopmentHeaders $app $serviceName}}
|
{{if hasIsDevelopmentHeaders $app $serviceName}}
|
||||||
IsDevelopment = {{getIsDevelopmentHeaders $app $serviceName}}
|
IsDevelopment = {{getIsDevelopmentHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasRequestHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.customRequestHeaders]
|
|
||||||
{{range $k, $v := getRequestHeaders $app $serviceName}}
|
|
||||||
{{$k}} = "{{$v}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasResponseHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.customResponseHeaders]
|
|
||||||
{{range $k, $v := getResponseHeaders $app $serviceName}}
|
|
||||||
{{$k}} = "{{$v}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasAllowedHostsHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.AllowedHosts]
|
|
||||||
{{range getAllowedHostsHeaders $app $serviceName}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasHostsProxyHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.HostsProxyHeaders]
|
|
||||||
{{range getHostsProxyHeaders $app $serviceName}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasSSLProxyHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.SSLProxyHeaders]
|
|
||||||
{{range $k, $v := getSSLProxyHeaders $app $serviceName}}
|
|
||||||
{{$k}} = "{{$v}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".routes."route-host{{$app.ID | replace "/" "-"}}{{getServiceNameSuffix $serviceName }}"]
|
{{if hasAllowedHostsHeaders $app $serviceName}}
|
||||||
rule = "{{getFrontendRule $app $serviceName}}"
|
AllowedHosts = [{{range getAllowedHostsHeaders $app $serviceName}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasHostsProxyHeaders $app $serviceName}}
|
||||||
|
HostsProxyHeaders = [{{range getHostsProxyHeaders $app $serviceName}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasRequestHeaders $app $serviceName}}
|
||||||
|
[frontends."{{ getFrontendName $app $serviceName }}".headers.customRequestHeaders]
|
||||||
|
{{range $k, $v := getRequestHeaders $app $serviceName}}
|
||||||
|
{{$k}} = "{{$v}}"
|
||||||
|
{{end}}
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasResponseHeaders $app $serviceName}}
|
||||||
|
[frontends."{{ getFrontendName $app $serviceName }}".headers.customResponseHeaders]
|
||||||
|
{{range $k, $v := getResponseHeaders $app $serviceName}}
|
||||||
|
{{$k}} = "{{$v}}"
|
||||||
|
{{end}}
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasSSLProxyHeaders $app $serviceName}}
|
||||||
|
[frontends."{{ getFrontendName $app $serviceName }}".headers.SSLProxyHeaders]
|
||||||
|
{{range $k, $v := getSSLProxyHeaders $app $serviceName}}
|
||||||
|
{{$k}} = "{{$v}}"
|
||||||
|
{{end}}
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
[frontends."{{ getFrontendName $app $serviceName }}".routes."route-host{{$app.ID | replace "/" "-"}}{{getServiceNameSuffix $serviceName }}"]
|
||||||
|
rule = "{{getFrontendRule $app $serviceName}}"
|
||||||
|
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
|
@ -500,15 +500,15 @@ func (s *Server) postLoadConfiguration() {
|
||||||
|
|
||||||
// check if one of the frontend entrypoints is configured with TLS
|
// check if one of the frontend entrypoints is configured with TLS
|
||||||
// and is configured with ACME
|
// and is configured with ACME
|
||||||
ACMEEnabled := false
|
acmeEnabled := false
|
||||||
for _, entryPoint := range frontend.EntryPoints {
|
for _, entryPoint := range frontend.EntryPoints {
|
||||||
if s.globalConfiguration.ACME.EntryPoint == entryPoint && s.globalConfiguration.EntryPoints[entryPoint].TLS != nil {
|
if s.globalConfiguration.ACME.EntryPoint == entryPoint && s.globalConfiguration.EntryPoints[entryPoint].TLS != nil {
|
||||||
ACMEEnabled = true
|
acmeEnabled = true
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ACMEEnabled {
|
if acmeEnabled {
|
||||||
for _, route := range frontend.Routes {
|
for _, route := range frontend.Routes {
|
||||||
rules := Rules{}
|
rules := Rules{}
|
||||||
domains, err := rules.ParseDomains(route.Rule)
|
domains, err := rules.ParseDomains(route.Rule)
|
||||||
|
|
|
@ -225,30 +225,33 @@
|
||||||
{{if hasIsDevelopmentHeaders $container}}
|
{{if hasIsDevelopmentHeaders $container}}
|
||||||
IsDevelopment = {{getIsDevelopmentHeaders $container}}
|
IsDevelopment = {{getIsDevelopmentHeaders $container}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasAllowedHostsHeaders $container}}
|
||||||
|
AllowedHosts = [{{range getAllowedHostsHeaders $container}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasHostsProxyHeaders $container}}
|
||||||
|
HostsProxyHeaders = [{{range getHostsProxyHeaders $container}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
|
||||||
{{if hasRequestHeaders $container}}
|
{{if hasRequestHeaders $container}}
|
||||||
[frontends."frontend-{{$frontend}}".headers.customRequestHeaders]
|
[frontends."frontend-{{$frontend}}".headers.customRequestHeaders]
|
||||||
{{range $k, $v := getRequestHeaders $container}}
|
{{range $k, $v := getRequestHeaders $container}}
|
||||||
{{$k}} = "{{$v}}"
|
{{$k}} = "{{$v}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
{{if hasResponseHeaders $container}}
|
{{if hasResponseHeaders $container}}
|
||||||
[frontends."frontend-{{$frontend}}".headers.customResponseHeaders]
|
[frontends."frontend-{{$frontend}}".headers.customResponseHeaders]
|
||||||
{{range $k, $v := getResponseHeaders $container}}
|
{{range $k, $v := getResponseHeaders $container}}
|
||||||
{{$k}} = "{{$v}}"
|
{{$k}} = "{{$v}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasAllowedHostsHeaders $container}}
|
|
||||||
[frontends."frontend-{{$frontend}}".headers.AllowedHosts]
|
|
||||||
{{range getAllowedHostsHeaders $container}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasHostsProxyHeaders $container}}
|
|
||||||
[frontends."frontend-{{$frontend}}".headers.HostsProxyHeaders]
|
|
||||||
{{range getHostsProxyHeaders $container}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasSSLProxyHeaders $container}}
|
{{if hasSSLProxyHeaders $container}}
|
||||||
[frontends."frontend-{{$frontend}}".headers.SSLProxyHeaders]
|
[frontends."frontend-{{$frontend}}".headers.SSLProxyHeaders]
|
||||||
{{range $k, $v := getSSLProxyHeaders $container}}
|
{{range $k, $v := getSSLProxyHeaders $container}}
|
||||||
|
|
|
@ -58,6 +58,16 @@
|
||||||
PublicKey = "{{$frontend.Headers.PublicKey}}"
|
PublicKey = "{{$frontend.Headers.PublicKey}}"
|
||||||
ReferrerPolicy = "{{$frontend.Headers.ReferrerPolicy}}"
|
ReferrerPolicy = "{{$frontend.Headers.ReferrerPolicy}}"
|
||||||
IsDevelopment = {{$frontend.Headers.IsDevelopment}}
|
IsDevelopment = {{$frontend.Headers.IsDevelopment}}
|
||||||
|
{{if $frontend.Headers.AllowedHosts}}
|
||||||
|
AllowedHosts = [{{range $frontend.Headers.AllowedHosts}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
{{if $frontend.Headers.HostsProxyHeaders}}
|
||||||
|
HostsProxyHeaders = [{{range $frontend.Headers.HostsProxyHeaders}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
{{if $frontend.Headers.CustomRequestHeaders}}
|
{{if $frontend.Headers.CustomRequestHeaders}}
|
||||||
[frontends."{{$frontendName}}".headers.customrequestheaders]
|
[frontends."{{$frontendName}}".headers.customrequestheaders]
|
||||||
{{range $k, $v := $frontend.Headers.CustomRequestHeaders}}
|
{{range $k, $v := $frontend.Headers.CustomRequestHeaders}}
|
||||||
|
@ -70,18 +80,6 @@
|
||||||
{{$k}} = "{{$v}}"
|
{{$k}} = "{{$v}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if $frontend.Headers.AllowedHosts}}
|
|
||||||
[frontends."{{$frontendName}}".headers.AllowedHosts]
|
|
||||||
{{range $frontend.Headers.AllowedHosts}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if $frontend.Headers.HostsProxyHeaders}}
|
|
||||||
[frontends."{{$frontendName}}".headers.HostsProxyHeaders]
|
|
||||||
{{range $frontend.Headers.HostsProxyHeaders}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if $frontend.Headers.SSLProxyHeaders}}
|
{{if $frontend.Headers.SSLProxyHeaders}}
|
||||||
[frontends."{{$frontendName}}".headers.SSLProxyHeaders]
|
[frontends."{{$frontendName}}".headers.SSLProxyHeaders]
|
||||||
{{range $k, $v := $frontend.Headers.SSLProxyHeaders}}
|
{{range $k, $v := $frontend.Headers.SSLProxyHeaders}}
|
||||||
|
|
|
@ -104,84 +104,87 @@
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers]
|
[frontends."{{ getFrontendName $app $serviceName }}".headers]
|
||||||
{{if hasSSLRedirectHeaders $app $serviceName}}
|
{{if hasSSLRedirectHeaders $app $serviceName}}
|
||||||
SSLRedirect = {{getSSLRedirectHeaders $app $serviceName}}
|
SSLRedirect = {{getSSLRedirectHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSSLTemporaryRedirectHeaders $app $serviceName}}
|
{{if hasSSLTemporaryRedirectHeaders $app $serviceName}}
|
||||||
SSLTemporaryRedirect = {{getSSLTemporaryRedirectHeaders $app $serviceName}}
|
SSLTemporaryRedirect = {{getSSLTemporaryRedirectHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSSLHostHeaders $app $serviceName}}
|
{{if hasSSLHostHeaders $app $serviceName}}
|
||||||
SSLHost = "{{getSSLHostHeaders $app $serviceName}}"
|
SSLHost = "{{getSSLHostHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSTSSecondsHeaders $app $serviceName}}
|
{{if hasSTSSecondsHeaders $app $serviceName}}
|
||||||
STSSeconds = {{getSTSSecondsHeaders $app $serviceName}}
|
STSSeconds = {{getSTSSecondsHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSTSIncludeSubdomainsHeaders $app $serviceName}}
|
{{if hasSTSIncludeSubdomainsHeaders $app $serviceName}}
|
||||||
STSIncludeSubdomains = {{getSTSIncludeSubdomainsHeaders $app $serviceName}}
|
STSIncludeSubdomains = {{getSTSIncludeSubdomainsHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasSTSPreloadHeaders $app $serviceName}}
|
{{if hasSTSPreloadHeaders $app $serviceName}}
|
||||||
STSPreload = {{getSTSPreloadHeaders $app $serviceName}}
|
STSPreload = {{getSTSPreloadHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasForceSTSHeaderHeaders $app $serviceName}}
|
{{if hasForceSTSHeaderHeaders $app $serviceName}}
|
||||||
ForceSTSHeader = {{getForceSTSHeaderHeaders $app $serviceName}}
|
ForceSTSHeader = {{getForceSTSHeaderHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasFrameDenyHeaders $app $serviceName}}
|
{{if hasFrameDenyHeaders $app $serviceName}}
|
||||||
FrameDeny = {{getFrameDenyHeaders $app $serviceName}}
|
FrameDeny = {{getFrameDenyHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasCustomFrameOptionsValueHeaders $app $serviceName}}
|
{{if hasCustomFrameOptionsValueHeaders $app $serviceName}}
|
||||||
CustomFrameOptionsValue = "{{getCustomFrameOptionsValueHeaders $app $serviceName}}"
|
CustomFrameOptionsValue = "{{getCustomFrameOptionsValueHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasContentTypeNosniffHeaders $app $serviceName}}
|
{{if hasContentTypeNosniffHeaders $app $serviceName}}
|
||||||
ContentTypeNosniff = {{getContentTypeNosniffHeaders $app $serviceName}}
|
ContentTypeNosniff = {{getContentTypeNosniffHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasBrowserXSSFilterHeaders $app $serviceName}}
|
{{if hasBrowserXSSFilterHeaders $app $serviceName}}
|
||||||
BrowserXSSFilter = {{getBrowserXSSFilterHeaders $app $serviceName}}
|
BrowserXSSFilter = {{getBrowserXSSFilterHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasContentSecurityPolicyHeaders $app $serviceName}}
|
{{if hasContentSecurityPolicyHeaders $app $serviceName}}
|
||||||
ContentSecurityPolicy = "{{getContentSecurityPolicyHeaders $app $serviceName}}"
|
ContentSecurityPolicy = "{{getContentSecurityPolicyHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasPublicKeyHeaders $app $serviceName}}
|
{{if hasPublicKeyHeaders $app $serviceName}}
|
||||||
PublicKey = "{{getPublicKeyHeaders $app $serviceName}}"
|
PublicKey = "{{getPublicKeyHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasReferrerPolicyHeaders $app $serviceName}}
|
{{if hasReferrerPolicyHeaders $app $serviceName}}
|
||||||
ReferrerPolicy = "{{getReferrerPolicyHeaders $app $serviceName}}"
|
ReferrerPolicy = "{{getReferrerPolicyHeaders $app $serviceName}}"
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasIsDevelopmentHeaders $app $serviceName}}
|
{{if hasIsDevelopmentHeaders $app $serviceName}}
|
||||||
IsDevelopment = {{getIsDevelopmentHeaders $app $serviceName}}
|
IsDevelopment = {{getIsDevelopmentHeaders $app $serviceName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if hasRequestHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.customRequestHeaders]
|
|
||||||
{{range $k, $v := getRequestHeaders $app $serviceName}}
|
|
||||||
{{$k}} = "{{$v}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasResponseHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.customResponseHeaders]
|
|
||||||
{{range $k, $v := getResponseHeaders $app $serviceName}}
|
|
||||||
{{$k}} = "{{$v}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasAllowedHostsHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.AllowedHosts]
|
|
||||||
{{range getAllowedHostsHeaders $app $serviceName}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasHostsProxyHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.HostsProxyHeaders]
|
|
||||||
{{range getHostsProxyHeaders $app $serviceName}}
|
|
||||||
"{{.}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
{{if hasSSLProxyHeaders $app $serviceName}}
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".headers.SSLProxyHeaders]
|
|
||||||
{{range $k, $v := getSSLProxyHeaders $app $serviceName}}
|
|
||||||
{{$k}} = "{{$v}}"
|
|
||||||
{{end}}
|
|
||||||
{{end}}
|
|
||||||
|
|
||||||
[frontends."{{ getFrontendName $app $serviceName }}".routes."route-host{{$app.ID | replace "/" "-"}}{{getServiceNameSuffix $serviceName }}"]
|
{{if hasAllowedHostsHeaders $app $serviceName}}
|
||||||
rule = "{{getFrontendRule $app $serviceName}}"
|
AllowedHosts = [{{range getAllowedHostsHeaders $app $serviceName}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasHostsProxyHeaders $app $serviceName}}
|
||||||
|
HostsProxyHeaders = [{{range getHostsProxyHeaders $app $serviceName}}
|
||||||
|
"{{.}}",
|
||||||
|
{{end}}]
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasRequestHeaders $app $serviceName}}
|
||||||
|
[frontends."{{ getFrontendName $app $serviceName }}".headers.customRequestHeaders]
|
||||||
|
{{range $k, $v := getRequestHeaders $app $serviceName}}
|
||||||
|
{{$k}} = "{{$v}}"
|
||||||
|
{{end}}
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasResponseHeaders $app $serviceName}}
|
||||||
|
[frontends."{{ getFrontendName $app $serviceName }}".headers.customResponseHeaders]
|
||||||
|
{{range $k, $v := getResponseHeaders $app $serviceName}}
|
||||||
|
{{$k}} = "{{$v}}"
|
||||||
|
{{end}}
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
{{if hasSSLProxyHeaders $app $serviceName}}
|
||||||
|
[frontends."{{ getFrontendName $app $serviceName }}".headers.SSLProxyHeaders]
|
||||||
|
{{range $k, $v := getSSLProxyHeaders $app $serviceName}}
|
||||||
|
{{$k}} = "{{$v}}"
|
||||||
|
{{end}}
|
||||||
|
{{end}}
|
||||||
|
|
||||||
|
[frontends."{{ getFrontendName $app $serviceName }}".routes."route-host{{$app.ID | replace "/" "-"}}{{getServiceNameSuffix $serviceName }}"]
|
||||||
|
rule = "{{getFrontendRule $app $serviceName}}"
|
||||||
|
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
Loading…
Reference in a new issue