Merge pull request #787 from aledbf/pass-server-header

Add setting to allow returning the Server header from the backend
This commit is contained in:
Manuel Alejandro de Brito Fontes 2017-05-28 19:16:58 -04:00 committed by GitHub
commit 32f24380ec
2 changed files with 11 additions and 0 deletions

View file

@ -82,6 +82,12 @@ const (
type Configuration struct {
defaults.Backend `json:",squash"`
// AllowBackendServerHeader enables the return of the header Server from the backend
// instead of the generic nginx string.
// http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_hide_header
// By default this is disabled
AllowBackendServerHeader bool `json:"allow-backend-server-header"`
// EnableDynamicTLSRecords enables dynamic TLS record sizes
// https://blog.cloudflare.com/optimizing-tls-over-tcp-to-reduce-latency
// By default this is enabled
@ -288,6 +294,7 @@ type Configuration struct {
// NewDefault returns the default nginx configuration
func NewDefault() Configuration {
cfg := Configuration{
AllowBackendServerHeader: false,
ClientHeaderBufferSize: "1k",
ClientBodyBufferSize: "8k",
EnableDynamicTLSRecords: true,

View file

@ -219,6 +219,10 @@ http {
proxy_ssl_session_reuse on;
{{ if $cfg.AllowBackendServerHeader }}
proxy_pass_header Server;
{{ end }}
{{range $name, $upstream := $backends}}
upstream {{$upstream.Name}} {
{{ if eq $upstream.SessionAffinity.AffinityType "cookie" }}