diff --git a/web/web.go b/web/web.go index 1bb6e235..968f7dc1 100644 --- a/web/web.go +++ b/web/web.go @@ -337,19 +337,17 @@ func (s *Server) Start() (err error) { } if certFile != "" || keyFile != "" { cert, err := tls.LoadX509KeyPair(certFile, keyFile) - if err != nil { - listener.Close() - return err + if err == nil { + c := &tls.Config{ + Certificates: []tls.Certificate{cert}, + } + listener = network.NewAutoHttpsListener(listener) + listener = tls.NewListener(listener, c) + logger.Info("web server run https on", listener.Addr()) + } else { + logger.Error("error in loading certificates: ", err) + logger.Info("web server run http on", listener.Addr()) } - c := &tls.Config{ - Certificates: []tls.Certificate{cert}, - } - listener = network.NewAutoHttpsListener(listener) - listener = tls.NewListener(listener, c) - } - - if certFile != "" || keyFile != "" { - logger.Info("web server run https on", listener.Addr()) } else { logger.Info("web server run http on", listener.Addr()) }