mirror of
https://github.com/caddyserver/caddy.git
synced 2024-11-25 17:56:34 +08:00
caddyhttp: Copy logger config to HTTP server during AutoHTTPS (#4990)
This commit is contained in:
parent
73d4a8ba02
commit
d062fb4020
|
@ -93,6 +93,9 @@ func (app *App) automaticHTTPSPhase1(ctx caddy.Context, repl *caddy.Replacer) er
|
||||||
// https://github.com/caddyserver/caddy/issues/3443)
|
// https://github.com/caddyserver/caddy/issues/3443)
|
||||||
redirDomains := make(map[string][]caddy.NetworkAddress)
|
redirDomains := make(map[string][]caddy.NetworkAddress)
|
||||||
|
|
||||||
|
// the configured logger for an HTTPS enabled server
|
||||||
|
var logger *ServerLogConfig
|
||||||
|
|
||||||
for srvName, srv := range app.Servers {
|
for srvName, srv := range app.Servers {
|
||||||
// as a prerequisite, provision route matchers; this is
|
// as a prerequisite, provision route matchers; this is
|
||||||
// required for all routes on all servers, and must be
|
// required for all routes on all servers, and must be
|
||||||
|
@ -172,6 +175,11 @@ func (app *App) automaticHTTPSPhase1(ctx caddy.Context, repl *caddy.Replacer) er
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// clone the logger so we can apply it to the HTTP server
|
||||||
|
if srv.Logs != nil {
|
||||||
|
logger = srv.Logs.clone()
|
||||||
|
}
|
||||||
|
|
||||||
// for all the hostnames we found, filter them so we have
|
// for all the hostnames we found, filter them so we have
|
||||||
// a deduplicated list of names for which to obtain certs
|
// a deduplicated list of names for which to obtain certs
|
||||||
// (only if cert management not disabled for this server)
|
// (only if cert management not disabled for this server)
|
||||||
|
@ -400,6 +408,7 @@ redirServersLoop:
|
||||||
app.Servers["remaining_auto_https_redirects"] = &Server{
|
app.Servers["remaining_auto_https_redirects"] = &Server{
|
||||||
Listen: redirServerAddrsList,
|
Listen: redirServerAddrsList,
|
||||||
Routes: appendCatchAll(redirRoutes),
|
Routes: appendCatchAll(redirRoutes),
|
||||||
|
Logs: logger,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -663,6 +663,19 @@ func (slc ServerLogConfig) getLoggerName(host string) string {
|
||||||
return slc.DefaultLoggerName
|
return slc.DefaultLoggerName
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (slc *ServerLogConfig) clone() *ServerLogConfig {
|
||||||
|
clone := &ServerLogConfig{}
|
||||||
|
clone.DefaultLoggerName = slc.DefaultLoggerName
|
||||||
|
clone.LoggerNames = make(map[string]string)
|
||||||
|
for k, v := range slc.LoggerNames {
|
||||||
|
clone.LoggerNames[k] = v
|
||||||
|
}
|
||||||
|
clone.SkipHosts = append(clone.SkipHosts, slc.SkipHosts...)
|
||||||
|
clone.SkipUnmappedHosts = slc.SkipUnmappedHosts
|
||||||
|
clone.ShouldLogCredentials = slc.ShouldLogCredentials
|
||||||
|
return clone
|
||||||
|
}
|
||||||
|
|
||||||
// PrepareRequest fills the request r for use in a Caddy HTTP handler chain. w and s can
|
// PrepareRequest fills the request r for use in a Caddy HTTP handler chain. w and s can
|
||||||
// be nil, but the handlers will lose response placeholders and access to the server.
|
// be nil, but the handlers will lose response placeholders and access to the server.
|
||||||
func PrepareRequest(r *http.Request, repl *caddy.Replacer, w http.ResponseWriter, s *Server) *http.Request {
|
func PrepareRequest(r *http.Request, repl *caddy.Replacer, w http.ResponseWriter, s *Server) *http.Request {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user