콘텐츠 인코딩을 처리하는 브라우저 : gzip 및 인코딩 품질에 대한 특별한 요구 사항이있는 브라우저는 무엇입니까?


44

"손으로 만든"HTTP 1.0, 1.1 서버를 만들고 있습니다. 최근에 zip lib를 통합하여 인코딩 된 gzip으로 압축 된 데이터를 안팎으로 스트리밍 할 수 있습니다. 어떤 주요 브라우저 (IE6-IE10, Chrome, FF 등)가 현재 전송 Accept-Encoding: deflate, gzip, ...하고 처리 할 수 있는지 궁금 Content-Encoding: gzip합니다. 어느 쪽이 품질 기대치를 보내나요? 다음 중 인코딩 된 gzip으로 게시 된 요청 및 multypart / form 데이터를 내 서버로 보낼 수있는 것은 무엇입니까?


1
어쨌든 Accept-Encoding 헤더에 의존해서는 안됩니까? 아니면 그냥 호기심을 요구하고 있습니까?
Flimzy

@Flimzy 사전에 인코딩 된 파일을 저장하는 경우 (CPU로드를 줄이거 나, 디스크 공간 사용량을 줄이거 나, 압축 수준을 높이거나, 완전히 정적 서버에서 파일을 제공하기 때문에) 이면 Accept-Encoding 헤더를 준수 할 사치가 없습니다. 물론 헤더에 순종 할 수 있지만 요즘 gzip을 거의 보편적으로 지원한다면 gzip을 지원하도록 웹 사이트를 구축해도됩니다.
Hayden Schiff

1
@haydenschiff는 물론 수락 헤더를 존중 할 수 있습니다. gzipped 데이터를 저장하는 경우 accept 헤더가 지시하는 경우 데이터를 압축 해제 할 준비가 이미되어 있습니다.
Flimzy

답변:


49

기본적으로 오늘날 모든 브라우저는 deflate / gzip을 지원합니다. 이 페이지 에는 많은 브라우저와 버전 번호가 나열되어 있습니다. 다음은 요약 및 일부 최신 브라우저입니다.

  • 넷스케이프 6+ (넷스케이프 4-5는 버그가 있지만).
  • HTTP / 1.1로 설정된 경우 Internet Explorer 5.5 이상 (2000 년 7 월) 및 IE 4
  • 오페라 5+ (2000 년 6 월)
  • Lynx 2.6 이상 (1999 년 이전)
  • Firefox 0.9.5 이상 (2001 년 10 월)
  • 영원히 크롬
  • 영원히 사파리 (알 수있는 한)

보시다시피 거의 15 년 동안 완벽하게 지원되며 15 세 이상의 브라우저를 사용하는 사람은 없습니다.


1
+1 존재하지 않는 문제처럼 보였기 때문에 혼란 스러웠습니다. @ user1049847 위의 질문을 확장해야할까요?
Su

3
그리고 이것에 추가하기 위해 브라우저는 gzip 압축 요청을 보내지 않지만 거의 모든 gzip 압축 응답을 수락합니다. StackOverflow에서 " 브라우저가 gzip 요청을 보낼 수없는 이유는 무엇입니까? "를 참조하십시오 .
Marco Miltenburg 10

2
@Su '는 옳습니다. gzip을 지원하는 모든 브라우저 는 Accept-Encoding 헤더를 보내 므로 어떤 브라우저가 이것을 지원하는지 정확하게 신경 쓸 필요가 없습니다. 그들이받을 수 있다고 말하면 gzip을 보내십시오.
DisgruntledGoat

12
질문은 관련이 있습니다. Amazon S3, MS Azure 및 기타 여러 제품에서 정적 파일을 제공하는 경우 accept-encoding 헤더에 동적으로 응답 할 수 없습니다. 또한 압축하면 CPU에 추가로드가 발생합니다.
QFDev

1
@QFDev 정적 파일을 제공하는 경우 압축 된 버전과 그렇지 않은 버전을 작성하고 accept-encoding / gzip을 확인한 후 그에 따라 제공되는 정적 파일을 변경할 수 있습니다.
JordanReiter
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.