summaryrefslogtreecommitdiffstats
path: root/internal/nolog/middleware.go
blob: c11ed55fa0f117ea668a97bdefd47b2e23ba5bcc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package nolog

import "net/http"

// Strip all identifying information from every request before any handler sees it.
func Middleware(next http.Handler) http.Handler {
	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		r.Header.Del("X-Forwarded-For")
		r.Header.Del("X-Real-IP")
		r.Header.Del("User-Agent")
		r.Header.Del("Referer")
		r.RemoteAddr = "0.0.0.0:0"
		next.ServeHTTP(w, r)
	})
}