From a32d9dbd771f3900f22dc7ccf4d108442ca3bdc5 Mon Sep 17 00:00:00 2001 From: kqjy Date: Sat, 22 Nov 2025 14:13:41 +0800 Subject: [PATCH] Fix replication corruption issue --- app/s3_api.py | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/app/s3_api.py b/app/s3_api.py index 5cfd23d..a0e51b0 100644 --- a/app/s3_api.py +++ b/app/s3_api.py @@ -480,8 +480,8 @@ def _generate_presigned_url( host = parsed.netloc scheme = parsed.scheme else: - host = request.host - scheme = request.scheme or "http" + host = request.headers.get("X-Forwarded-Host", request.host) + scheme = request.headers.get("X-Forwarded-Proto", request.scheme or "http") canonical_headers = f"host:{host}\n" canonical_request = "\n".join( @@ -1083,15 +1083,9 @@ def object_handler(bucket_name: str, object_key: str): if error: return error - # Debug: Log incoming request details - current_app.logger.info(f"Receiving PUT {bucket_name}/{object_key}") - current_app.logger.info(f"Headers: {dict(request.headers)}") - current_app.logger.info(f"Content-Length: {request.content_length}") - stream = request.stream content_encoding = request.headers.get("Content-Encoding", "").lower() if "aws-chunked" in content_encoding: - current_app.logger.info("Decoding aws-chunked stream") stream = AwsChunkedDecoder(stream) metadata = _extract_request_metadata()