Loading src/http/HttpProxyServer.cpp +6 −0 Changes for src/http/HttpProxyServer.cpp: 6 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -364,6 +364,12 @@ void HttpProxyController::RequestEvent(libhttppp::HttpRequest &curreq, const int // TLS (or straight to H1 for a cleartext upstream) -- see HttpClient // ctor in libhttppp/src/http.cpp for the fallback ladder. libhttppp::HttpClient client(upstream, /*vers=*/3, /*timeoutSec=*/60, trustPolicyFor(matched)); // A reverse proxy must hand 3xx responses straight back to the real client // (which owns cookie storage/navigation), not chase them itself -- HttpClient // otherwise follows redirects like a browser and silently swallows the // upstream's Location/Set-Cookie headers (see libhttppp/src/http.cpp, // _doH1Request's redirect handling). client.setMaxRedirects(0); libhttppp::HttpRequest outreq; outreq.setRequestURL(upstream.getPath()); Loading Loading
src/http/HttpProxyServer.cpp +6 −0 Changes for src/http/HttpProxyServer.cpp: 6 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -364,6 +364,12 @@ void HttpProxyController::RequestEvent(libhttppp::HttpRequest &curreq, const int // TLS (or straight to H1 for a cleartext upstream) -- see HttpClient // ctor in libhttppp/src/http.cpp for the fallback ladder. libhttppp::HttpClient client(upstream, /*vers=*/3, /*timeoutSec=*/60, trustPolicyFor(matched)); // A reverse proxy must hand 3xx responses straight back to the real client // (which owns cookie storage/navigation), not chase them itself -- HttpClient // otherwise follows redirects like a browser and silently swallows the // upstream's Location/Set-Cookie headers (see libhttppp/src/http.cpp, // _doH1Request's redirect handling). client.setMaxRedirects(0); libhttppp::HttpRequest outreq; outreq.setRequestURL(upstream.getPath()); Loading