diff --git a/server/upstream/upstream.go b/server/upstream/upstream.go index afba8d4..f97c6ae 100644 --- a/server/upstream/upstream.go +++ b/server/upstream/upstream.go @@ -104,6 +104,12 @@ func (o *Options) Upstream(ctx *context.Context, giteaClient *gitea.Client, redi // Handle not found error if err != nil && errors.Is(err, gitea.ErrorNotFound) { + // Get and match redirects + redirects := o.getRedirects(giteaClient, redirectsCache) + if o.matchRedirects(ctx, giteaClient, redirects, redirectsCache) { + return true + } + if o.TryIndexPages { // copy the o struct & try if an index page exists optionsForIndexPages := *o @@ -138,9 +144,7 @@ func (o *Options) Upstream(ctx *context.Context, giteaClient *gitea.Client, redi } } - // Get and match redirects - redirects := o.getRedirects(giteaClient, redirectsCache) - return o.matchRedirects(ctx, giteaClient, redirects, redirectsCache) + return false } // handle unexpected client errors