code: func NewHTTPServer(cors []string, vhosts []string, timeouts HTTPTimeouts, srv http.Handler) *http.Server {
  	// Wrap the CORS-handler within a host-handler
  	handler := newCorsHandler(srv, cors)
  	handler = newVHostHandler(vhosts, handler)
  
  	// Make sure timeout values are meaningful
  	if timeouts.ReadTimeout < time.Second {
  		log.Warn("Sanitizing invalid HTTP read timeout", "provided", timeouts.ReadTimeout, "updated", DefaultHTTPTimeouts.ReadTimeout)
  		timeouts.ReadTimeout = DefaultHTTPTimeouts.ReadTimeout
  	}
  	if timeouts.WriteTimeout < time.Second {
  		log.Warn("Sanitizing invalid HTTP write timeout", "provided", timeouts.WriteTimeout, "updated", DefaultHTTPTimeouts.WriteTimeout)
  		timeouts.WriteTimeout = DefaultHTTPTimeouts.WriteTimeout
  	}
  	if timeouts.IdleTimeout < time.Second {
  		log.Warn("Sanitizing invalid HTTP idle timeout", "provided", timeouts.IdleTimeout, "updated", DefaultHTTPTimeouts.IdleTimeout)
  		timeouts.IdleTimeout = DefaultHTTPTimeouts.IdleTimeout
  	}
  	// Bundle and start the HTTP server
  	return &http.Server{
  		Handler:      handler,
  		ReadTimeout:  timeouts.ReadTimeout,
  		WriteTimeout: timeouts.WriteTimeout,
  		IdleTimeout:  timeouts.IdleTimeout,
  	}
  }
docs: // NewHTTPServer creates a new HTTP RPC server around an API provider.
  //
  // Deprecated: Server implements http.Handler