func (m MatchHeaderRE) Match(r *http.Request) bool {
	for field, rm := range m {
		actualFieldVals := getHeaderFieldVals(r.Header, field, r.Host)
		match := false
	fieldVal:
		for _, actualFieldVal := range actualFieldVals {
			repl := r.Context().Value(caddy.ReplacerCtxKey).(*caddy.Replacer)
			if rm.Match(actualFieldVal, repl) {
				match = true
				break fieldVal
			}
		}
		if !match {
			return false
		}
	}
	return true
}
// Match returns true if r matches m.
Match returns true if r matches m.
// Match returns true if r matches m .
func (m MatchHeaderRE) Match(r *http.Request) bool {
	for field, rm := range m {
		actualFieldVals := getHeaderFieldVals(r.Header, field, r.Host)
		match := false
	fieldVal:
		for _, actualFieldVal := range actualFieldVals {
			repl := r.Context().Value(caddy.ReplacerCtxKey).(*caddy.Replacer)
			if rm.Match(actualFieldVal, repl) {
				match = true
				break fieldVal
			}
		}
		if !match {
			return false
		}
	}
	return true
}
func ( m MatchHeaderRE ) Match ( r * http . Request ) bool { for field , rm := range m { actualFieldVals := getHeaderFieldVals ( r . Header , field , r . Host ) match := false fieldVal : for _ , actualFieldVal := range actualFieldVals { repl := r . Context ( ) . Value ( caddy . ReplacerCtxKey ) . ( * caddy . Replacer ) if rm . Match ( actualFieldVal , repl ) { match = true break fieldVal } } if ! match { return false } } return true }
Match returns true if r matches m.
Match returns true if r matches m .