Apache: zip으로 압축(gzip 아님)

Apache: zip으로 압축(gzip 아님)

클라이언트 헤더를 로 설정하여 apache 2.4콘텐츠가 클라이언트에 전달되기 전에 압축하도록 구성했습니다 . 그래서 저는 이미 유효한 gzip 파일을 생성하면서 작업을 시작했습니다.mod_deflate"Accept-Encoding: gzip"

curl --header "Accept-Encoding: gzip" https://my.website/ > content.gz

"Accept-Encoding: zip"로 압축할 수 있는 방법이 있나요 zip?

내가 문서를 이해하는 한 이것은 불가능해 보입니다.

gzip 인코딩은 이전 브라우저 구현과의 완전한 호환성을 보장하기 위해 지원되는 유일한 인코딩입니다. 수축 인코딩은 지원되지 않습니다... (https://httpd.apache.org/docs/2.4/mod/mod_deflate.html)

Windows파일 압축을 풀 수 없는 사용자 로부터 질문이 나왔습니다 gzip(Windows 기본 도구만 사용하는 것 같습니다).

[편집하다: gerald-schneider가 언급했듯이 브라우저는 자동으로 콘텐츠의 압축을 해제합니다. 하지만 우리는 curlAPI를 스크립팅할 수 있는 명령줄 도구를 사용하고 있으므로 브라우저가 관련되지 않습니다. 다른 모든 답변과 의견에도 감사드립니다. 더 정확해야한다고 생각합니다. 즉, curl시작하는 명령을 적어 두었습니다.]

답변1

HTTP 프로토콜의 압축이 무엇인지 잘못 이해하신 것 같습니다. 아카이브를 다운로드하기 위한 것이 아닙니다. 단지 탐색만 할 때 전송되는 데이터를 줄이기 위한 것입니다. 압축되는 파일은 HTML, CSS, JavaScript 및 이미지입니다. 압축 해제는 페이지를 표시하기 전에 브라우저에서 처리됩니다. 그리고 브라우저는 Windows에서 gzip을 잘 처리할 수 있습니다.

답변2

질문의 Apache 문서 인용에서 지적했듯이~ 아니다로 설정된 클라이언트 헤더 와 zip함께 압축된 콘텐츠를 제공하도록 아파치를 구성할 수 있습니다 . 작동 합니다 . 사용자가mod_deflateAccept-Encoding: zipgzip브라우저해당 브라우저는 즉시 이를 디코딩합니다. 사용자가다운로드예를 들어 콘텐츠는 OS 기본 도구 또는 설치된 도구(예: Windows 사용자에게 필요한 후자)를 사용하여 ed 콘텐츠를 curlgunzip해야 합니다 .gzip

답변3

귀하의 의견을 읽어보니 귀하가 무엇을 요구하는지 잘 모르겠습니다.

  • Apache 서버가 Gzip 대신 Zip 인코딩을 사용하여 일반(html 또는 일반 텍스트) 파일을 보내도록 하시겠습니까? (문서에 따르면 불가능함)
  • 컬이 서버에서 데이터를 가져올 수 있도록 하시겠습니까? (이 경우 인코딩은 "사소한" 네트워크 최적화이므로 걱정할 필요가 없습니다.)
  • 컬이 일부 zip 콘텐츠를 다운로드하도록 하시겠습니까? 이 경우 대신 httpd를 구성하여 일부 "정적 파일" 설정을 사용하여 zip 아카이브를 직접 제공해야 합니다.

어쨌든, 콘텐츠 인코딩이 여기서 찾고 있는 것인지 잘 모르겠습니다...

관련 정보