Skip to content

Latest commit

 

History

History
28 lines (17 loc) · 2.2 KB

2019q3.md

File metadata and controls

28 lines (17 loc) · 2.2 KB

20190703

nginx gzip 설정

얼마 전 gzip에 대해 살펴봤었는데, nginx 에서 gzip 적용시 설정할 수 있는 몇 가지 옵션에 대해 더 살펴 봄.

gzip_proxied

Syntax: gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any …;

nginx 로 오는 요청 및 응답의 특정 조건(응답헤더에 expired 가 있냐, 요청에 auth 가 있냐 등)에 따라 프록시 요청에 대한 응답의 gzipping 활성화 또는 비활성화 옵션. 프록시 요청이라는 것은 요청 헤더의 “Via" 로 판단함.

Via 헤더필드는 프로토콜 버전, 프록시의 호스트 이름, User-Agent 같은 정보를 담음. 버그가 있는 프록시를 디버깅 하기 위한 용도로 쓰인다고 함. XFF 헤더필드는 최초 클라이언트의 IP 를 담고 있음.

gzip_vary

Syntax: gzip_vary on | off;

  • gzip, gzip_static, gunzip 이 활성화 됐을 때 Vary 헤더 필드에 Accept-Encoding 을 포함할지 여부.
  • Vary 헤더필드에 대해서는 카카오 기술 블로그 분산 웹 캐시 (Wcache)의 개선과정 - Part 2 에서 다음과 같이 설명하고 있음.

HTTP 헤더 중에는 ‘Vary’라는 항목이 있습니다. 동일한 URL에 대해 요청을 하더라도 요청한 사용자의 특징(User Agent, Accept Encoding, Origin 등등)에 따라 서로 다른 응답을 해 주기 위해서 존재하는 헤더입니다. 따라서 웹 캐시에서는 vary 헤더를 확인하고 해당 헤더에서 명시하는 조건에 따라 동일 URL이라 하더라도 다른 종류의 컨텐츠를 캐싱하고, 제공해야 합니다.

20190815

응답 없는 서버

  • http://www.google.com:81/
  • 위 URL 로 요청을 보내면 응답이 없음. 타임아웃을 급하게 테스트 해야 하는 상황에서 사용할만함.