in internal/namespaceinpath/responsewriter.go [57:91]
func (w *responseWriter) isAuthURL(reqURL *url.URL) bool {
if w.authRedirectURI == "" {
return false
}
if isAuthRedirectURL(reqURL, w.authRedirectURI) {
return true
}
_, port, _ := net.SplitHostPort(reqURL.Host)
pagesDomainWithPort := w.pagesDomain
if port != "" {
pagesDomainWithPort = w.pagesDomain + ":" + port
}
authSegment := ""
if reqURL.Host == pagesDomainWithPort {
// if namespace in path
segments := strings.Split(strings.TrimPrefix(reqURL.Path, "/"), "/")
if len(segments) == 2 {
authSegment = segments[1]
}
} else if strings.HasSuffix(reqURL.Host, pagesDomainWithPort) {
// if namespace in host
segments := strings.Split(strings.TrimPrefix(reqURL.Path, "/"), "/")
if len(segments) == 1 {
authSegment = segments[0]
}
}
return authSegment == "auth"
}