<!-- review: finished -->

<a id="http-slice"></a>

# Slice

O módulo é um filtro que divide uma requisição em sub-requisições, cada uma retornando um determinado intervalo de resposta. O filtro fornece cache mais eficaz de respostas grandes.

Ao [compilar a partir do código-fonte](https://pt.angie.software//angie/docs/installation/sourcebuild.md#sourcebuild),
este módulo não é compilado por padrão;
ele deve ser habilitado com a
`‑‑with‑http_slice_module`
[opção de compilação](https://pt.angie.software//angie/docs/installation/sourcebuild.md#configure).

Em pacotes e imagens dos [nossos repositórios](https://pt.angie.software//angie/docs/installation/index.md#install-packages),
o módulo está incluído na compilação.

<a id="configuration-example-39"></a>

## Exemplo de Configuração

```nginx
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;
}
```

Neste exemplo, a resposta é dividida em fatias cacheáveis de 1 megabyte.

<a id="directives-42"></a>

## Diretivas

<a id="index-0"></a>

<a id="id1"></a>

### slice

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `slice` size;          |
|-------------------------------------------------------------------------------------------|------------------------|
| Padrão                                                                                    | `slice 0;`             |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | http, server, location |

Define o tamanho da fatia. O valor zero desabilita a divisão de respostas em fatias.

#### WARNING
Note que um valor muito baixo pode resultar em uso excessivo de memória e abertura de um grande número de arquivos.

Para que uma sub-requisição retorne o intervalo necessário, a variável [$slice_range](#v-slice-range) deve ser passada para o servidor com proxy como o campo de cabeçalho de requisição `Range`. Se o [cache](https://pt.angie.software//angie/docs/configuration/modules/http/http_proxy.md#proxy-cache) estiver habilitado, [$slice_range](#v-slice-range) deve ser adicionada à [chave de cache](https://pt.angie.software//angie/docs/configuration/modules/http/http_proxy.md#proxy-cache-key) e o cache de respostas com código de status 206 deve ser [habilitado](https://pt.angie.software//angie/docs/configuration/modules/http/http_proxy.md#proxy-cache-valid).

<a id="built-in-variables-10"></a>

## Variáveis Integradas

<a id="v-slice-range"></a>

### `$slice_range`

O intervalo da fatia atual no formato [HTTP byte range](https://datatracker.ietf.org/doc/html/rfc7233#section-2.1), por exemplo, `bytes=0-1048575`.
