diff options
author | 2022-05-15 10:10:55 +0100 | |
---|---|---|
committer | 2022-05-15 11:10:55 +0200 | |
commit | 4ac508f037119e42cc2b4274cfd4bb03fe69bf44 (patch) | |
tree | d23491be31b143e8114da4731ab08def77a820e7 /internal/router | |
parent | [bugfix] update syslog tests to listen/connect specifically to ipv4 loopback ... (diff) | |
download | gotosocial-4ac508f037119e42cc2b4274cfd4bb03fe69bf44.tar.xz |
[chore] Update LE server to use copy of main http.Server{} to maintain server timeouts etc (#571)
* update LE server to use copy of main HTTP server to maintain server timeouts etc
Signed-off-by: kim <grufwub@gmail.com>
* shutup linter
Signed-off-by: kim <grufwub@gmail.com>
Diffstat (limited to 'internal/router')
-rw-r--r-- | internal/router/router.go | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/internal/router/router.go b/internal/router/router.go index dbd39fc99..939624cb7 100644 --- a/internal/router/router.go +++ b/internal/router/router.go @@ -91,15 +91,19 @@ func (r *router) Start() { http.Redirect(rw, r, target, http.StatusTemporaryRedirect) }) - // Start the LetsEncrypt autocert manager HTTP server. go func() { - addr := fmt.Sprintf("%s:%d", + // Take our own copy of HTTP server + // with updated autocert manager endpoint + srv := (*r.srv) //nolint + srv.Handler = r.certManager.HTTPHandler(redirect) + srv.Addr = fmt.Sprintf("%s:%d", viper.GetString(keys.BindAddress), viper.GetInt(keys.LetsEncryptPort), ) - logrus.Infof("letsencrypt listening on %s", addr) - if err := http.ListenAndServe(addr, r.certManager.HTTPHandler(redirect)); err != nil && + // Start the LetsEncrypt autocert manager HTTP server. + logrus.Infof("letsencrypt listening on %s", srv.Addr) + if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed { logrus.Fatalf("letsencrypt: listen: %s", err) } |