mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-27 22:23:48 +03:00
reverse_proxy: Add 'transparent' Caddyfile subdirective (closes #2873)
This commit is contained in:
parent
f6ae092507
commit
86b785e51c
1 changed files with 15 additions and 0 deletions
|
@ -411,6 +411,21 @@ func (h *Handler) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
|
||||||
}
|
}
|
||||||
h.TransportRaw = caddyconfig.JSONModuleObject(rt, "protocol", name, nil)
|
h.TransportRaw = caddyconfig.JSONModuleObject(rt, "protocol", name, nil)
|
||||||
|
|
||||||
|
case "transparent":
|
||||||
|
if d.NextArg() {
|
||||||
|
return d.ArgErr()
|
||||||
|
}
|
||||||
|
if h.Headers == nil {
|
||||||
|
h.Headers = new(headers.Handler)
|
||||||
|
}
|
||||||
|
if h.Headers.Request == nil {
|
||||||
|
h.Headers.Request = new(headers.HeaderOps)
|
||||||
|
}
|
||||||
|
// The X-Forwarded-For header is always appended to by default, directly in the reverse proxy code
|
||||||
|
headers.CaddyfileHeaderOp(h.Headers.Request, "Host", "{http.request.hostport}", "")
|
||||||
|
headers.CaddyfileHeaderOp(h.Headers.Request, "X-Real-Ip", "{http.request.remote}", "")
|
||||||
|
headers.CaddyfileHeaderOp(h.Headers.Request, "X-Forwarded-Proto", "{http.request.scheme}", "")
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return d.Errf("unrecognized subdirective %s", d.Val())
|
return d.Errf("unrecognized subdirective %s", d.Val())
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue