fix: redirects

This commit is contained in:
2026-04-20 23:34:39 +02:00
parent b0b0edcc58
commit cf8ce93a56
+3 -5
View File
@@ -132,7 +132,7 @@ class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
def send_proxy(self, url: str) -> None:
headers = dict(self.headers)
headers["Host"] = urllib.parse.urlparse(url).netloc
headers["Host"] = (target_host := urllib.parse.urlparse(url).netloc)
headers["X-Real-IP"] = self.client_address[0]
headers["X-Forwarded-Host"] = self.host
headers["X-Forwarded-For"] = self.client_address[0]
@@ -156,16 +156,14 @@ class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
return
self.send_response(response.status_code, response.reason)
for header, value in response.headers.items():
if header.lower() == "location":
self.send_header(header, value.removeprefix(url))
elif header.lower() not in [
if header.lower() not in [
"content-length",
"content-encoding",
"transfer-encoding",
"server",
"date",
]:
self.send_header(header, value)
self.send_header(header, value.replace(target_host, self.host))
self.send_header("Content-Length", str(out_size := len(response.content)))
self.end_headers()
if out_size > 0: