INNER CODE UNIT · Go

func

jcmoraisjr/haproxy-ingress · pkg/acme/server.go:56

func (s *server) Listen(stopCh <-chan struct{}) error {
	handler := http.NewServeMux()
	handler.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
		host := r.Host
		uri := r.URL.Path
		token := s.resolver.GetToken(host, uri)
		if token == "" {
			w.WriteHeader(http.StatusNotFound)
			fmt.Fprint(w, "404 not found\n")
			s.logger.Warn("acme: url token not found: domain=%s uri=%s", host, uri)
			return
		}
		fmt.Fprint(w, token)
		s.logger.Info("acme: request token: domain=%s uri=%s", host, uri)
	})
	s.server = &http.Server{Addr: s.socket, Handler: handler}
	if err := os.Remove(s.server.Addr); err != nil && !os.IsNotExist(err) {
		s.logger.Warn("error removing an existent acme socket: %v", err)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…