From 2b1c2a3c46e15bda16fec15a15881daeee9e788e Mon Sep 17 00:00:00 2001 From: Ronmi Ren Date: Mon, 13 Jan 2025 18:03:17 +0800 Subject: [PATCH] forward proxy/cloudflare headers to api --- lib/web.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/web.go b/lib/web.go index 5616a9f..5bbf3aa 100644 --- a/lib/web.go +++ b/lib/web.go @@ -108,6 +108,16 @@ func (f *Forgejo) handle(w http.ResponseWriter, r *http.Request) { headers["If-Modified-Since"] = r.Header.Get("If-Modified-Since") headers["If-Range"] = r.Header.Get("If-Range") headers["Range"] = r.Header.Get("Range") + headers["X-Forwarded-For"] = r.Header.Get("X-Forwarded-For") + headers["X-Forwarded-Host"] = r.Header.Get("X-Forwarded-Host") + headers["X-Forwarded-Proto"] = r.Header.Get("X-Forwarded-Proto") + headers["X-Real-IP"] = r.Header.Get("X-Real-IP") + headers["X-Host"] = r.Header.Get("X-Host") + headers["CF-Connecting-IP"] = r.Header.Get("CF-Connecting-IP") + headers["CF-IPCountry"] = r.Header.Get("CF-IPCountry") + headers["CF-Visitor"] = r.Header.Get("CF-Visitor") + headers["CF-Request-ID"] = r.Header.Get("CF-Request-ID") + headers["CF-Ray"] = r.Header.Get("CF-Ray") resp, err := f.GetFile(r.Context(), headers, user, repo, f.Branch, file) if err != nil { w.WriteHeader(http.StatusNotFound)