diff --git a/http/web.go b/http/web.go index 447a2d7..dc0111d 100644 --- a/http/web.go +++ b/http/web.go @@ -596,12 +596,13 @@ func portServes(l config.Listener) map[int]*serve { if https && l.TLS.ACME != "" { s.TLSConfig = l.TLS.ACMEConfig - } else if https { - s.TLSConfig = l.TLS.Config - if l.TLS.ACME != "" { - tlsport := config.Port(mox.Conf.Static.ACME[l.TLS.ACME].Port, 443) + + tlsport := config.Port(mox.Conf.Static.ACME[l.TLS.ACME].Port, 443) + if portServe[tlsport] == nil || !slices.Contains(portServe[tlsport].Kinds, "acme-tls-alpn-01") { ensureServe(true, tlsport, "acme-tls-alpn-01", false) } + } else if https { + s.TLSConfig = l.TLS.Config } return s }