대용량 파일을 다운로드할 때 서버에서 잘못된 파일 크기를 보고함

대용량 파일을 다운로드할 때 서버에서 잘못된 파일 크기를 보고함

OS X 웹 서버에 sshfs를 통해 업로드된 대용량 tarball 파일이 있습니다. 업로드 전 내 컴퓨터에 있던 파일 크기는 5345834658바이트였습니다. 서버에 복사된 파일의 크기는 5345834658바이트로 모든 것이 맞는 것 같습니다. 파일을 서버의 다른 위치에 복사해도 5345834658바이트입니다.

문제는 파일을 다운로드하려고 할 때입니다. Firefox 대화 상자에는 "Gzip 아카이브(1.0GB)"가 표시되고 다운로드된 파일은 1050867362바이트에 불과합니다. 로컬 컴퓨터나 서버 자체에서 컬을 사용하여 파일을 다운로드하면 1050867362바이트만 얻습니다.

최대 파일 크기를 제한하도록 웹 서버를 구성하려고 생각 중입니다. 이 문제를 해결할 방법이 있나요? 부분을 ​​다시 합칠 수 있는 방법이 있다면 서버에서 파일을 분할할 수도 있지만 대용량 파일을 다운로드할 수 있으면 정말 좋겠습니다. 최대 파일 다운로드 크기를 제한하는 이유가 있나요?

답변1

HTTP 서버를 통해 얻는 파일의 크기는 정확히 5345834658 mod 4294967296의 나머지 부분입니다. 이는 웹 서버가 32비트 정수를 오버플로하고 나머지를 파일 크기로 사용했음을 의미합니다.

대용량 파일(>4GiB)을 지원하는 웹 서버로 업그레이드해야 합니다.

관련 정보