ngx_http_slice_module

ngx_http_slice_module 모듈(1.9.8)은 요청을 하위 요청으로 분할하는 필터로, 각 하위 요청은 특정한 응답 범위를 반환합니다. 필터는 큰 응답의 더욱 효과적인 캐싱을 제공합니다.

이 모듈은 기본적으로 빌드되지 않고 –with-http_slice_module 구성 매개변수로 활성화해야 합니다.

예제 구성

location / {
    slice             1m;
    proxy_cache       cache;
    proxy_cache_key   $uri$is_args$args$slice_range;
    proxy_set_header  Range $slice_range;
    proxy_cache_valid 200 206 1h;
    proxy_pass        http://localhost:8000;
}

이 예에서 응답은 1메가바이트 캐시 가능 슬라이스로 분할됩니다.

Directives

Syntax:  slice size;
Default: slice 0;
Context: http, server, location

슬라이스의 크기를 설정합니다. 0 값은 응답을 슬라이스로 분할하는 것을 비활성화합니다. 값이 너무 낮으면 메모리 사용이 과다해지고 다수의 파일이 열립니다.

하위 요청이 필요한 범위를 반환하기 위해 $slice_range 변수가 범위 요청 헤더 필드로 프록시 설정된 서버에 전달됩니다. 캐싱이 활성화되면 $slice_range가 캐시 키에 추가되고 206 상태 코드가 포함된 응답의 캐싱이 활성화되어야 합니다.

임베디드 변수

ngx_http_slice_module 모듈은 다음과 같은 포함된 변수를 지원합니다.

$slice_range

HTTP 바이트 범위 형식의 현재 슬라이스 범위, 예를 들어, bytes=0-1048575.