lightweight go reverse proxy for ollama with bearer token authentication
go proxy ollama

fix: require no ollama cfg change

Changed files
+17
+17
proxy.go
···
}
proxy := httputil.NewSingleHostReverseProxy(target)
+
+
// Customize the request before sending to backend
+
originalDirector := proxy.Director
+
proxy.Director = func(req *http.Request) {
+
originalDirector(req)
+
+
// Remove proxy headers to make it look like a local request
+
req.Header.Del("X-Forwarded-For")
+
req.Header.Del("X-Forwarded-Host")
+
req.Header.Del("X-Forwarded-Proto")
+
req.Header.Del("Via")
+
req.Header.Del("Authorization")
+
+
// Set Host to the target host to make it appear local
+
req.Host = target.Host
+
}
+
return proxy, nil
}