From 7adc845caefc1d1210cdfe0f49208ba91368a224 Mon Sep 17 00:00:00 2001 From: Stanley Hu Date: Thu, 8 Jul 2021 17:59:25 +0800 Subject: [PATCH 1/2] Set tlsConfig.NextProtos to h2 in order to support HTTP/2 --- cmd/web_letsencrypt.go | 1 + modules/graceful/server.go | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/cmd/web_letsencrypt.go b/cmd/web_letsencrypt.go index 15a3c92e8baab..68ffca729c41b 100644 --- a/cmd/web_letsencrypt.go +++ b/cmd/web_letsencrypt.go @@ -54,6 +54,7 @@ func runLetsEncrypt(listenAddr, domain, directory, email string, m http.Handler) } tlsConfig := magic.TLSConfig() + tlsConfig.NextProtos = append(tlsConfig.NextProtos, "h2") if enableHTTPChallenge { go func() { diff --git a/modules/graceful/server.go b/modules/graceful/server.go index 704aa8a2b71f1..0d3ebb0119d62 100644 --- a/modules/graceful/server.go +++ b/modules/graceful/server.go @@ -106,7 +106,7 @@ func (srv *Server) ListenAndServe(serve ServeFunction) error { func (srv *Server) ListenAndServeTLS(certFile, keyFile string, serve ServeFunction) error { config := &tls.Config{} if config.NextProtos == nil { - config.NextProtos = []string{"http/1.1"} + config.NextProtos = []string{"h2"} } config.Certificates = make([]tls.Certificate, 1) From b3497c1b0c8803e1f15463a5a5374a243eb5d694 Mon Sep 17 00:00:00 2001 From: 6543 <6543@obermui.de> Date: Thu, 8 Jul 2021 13:35:23 +0200 Subject: [PATCH 2/2] still allow http1 too --- modules/graceful/server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/graceful/server.go b/modules/graceful/server.go index 0d3ebb0119d62..6b7d4a1a970c1 100644 --- a/modules/graceful/server.go +++ b/modules/graceful/server.go @@ -106,7 +106,7 @@ func (srv *Server) ListenAndServe(serve ServeFunction) error { func (srv *Server) ListenAndServeTLS(certFile, keyFile string, serve ServeFunction) error { config := &tls.Config{} if config.NextProtos == nil { - config.NextProtos = []string{"h2"} + config.NextProtos = []string{"h2", "http/1.1"} } config.Certificates = make([]tls.Certificate, 1)