---
name: azion-configure-politicas-de-cache-para-uma-aplicacao
description: >-
  Defina por quanto tempo um objeto fica em cache, ignore o cache em um path e encaminhe o header Set-Cookie da origem aos usuários.
---

# Configure políticas de cache para uma aplicação

Em Azion Console, você define por quanto tempo um objeto fica em cache, ignora o cache em um path e encaminha o header `Set-Cookie` da origem. Um cache setting carrega a política de cache, e uma regra do [Rules Engine](/pt-br/documentacao/plataforma/applications/rules-engine/) a aplica às requisições que você escolher.

Para variar um objeto em cache por um argumento de query string ou por um cookie, consulte [Configure a Advanced Cache Key para uma aplicação](/pt-br/documentacao/guias/performance-e-confiabilidade/cache-e-purge/advanced-cache-key/).

---

## Pré-requisitos

- Uma aplicação. Para criar uma, consulte [Primeiros passos com Applications](/pt-br/documentacao/plataforma/applications/primeiros-passos/).
- Acesso a Azion Console. Consulte [Como acessar o Azion Console](/pt-br/documentacao/guias/plataforma/conta-e-billing/como-acessar-o-azion-console/).
- Application Accelerator pode gerar custos relacionados ao uso. Para as tarifas, consulte [Preços](/pt-br/documentacao/fundamentos/precos/#application-accelerator).

---

## Ative Application Accelerator

Um cache setting não exige módulo algum, e qualquer aplicação pode carregar um. [Application Accelerator](/pt-br/documentacao/plataforma/applications/#application-accelerator) é exigido para um **Max Age** abaixo de 60 segundos, para a variação de cache e para os behaviors **Bypass Cache** e **Forward Cookies**. O módulo vem desativado por padrão. Para ativá-lo:

1. **Abra a aplicação**

   Acesse [Azion Console](https://console.azion.com/) > **Applications** > **sua aplicação**.

2. **Ative o módulo**

   Na aba **Main Settings**, na seção **Modules**, ative **Application Accelerator**.

3. **Selecione Save**

A aplicação roda com Application Accelerator. Os cache settings dela aceitam um **Max Age** abaixo de 60 segundos, e **Bypass Cache** e **Forward Cookies** ficam disponíveis no **Rules Engine**.

---

## Defina o cache TTL de um path

Um cache setting guarda o time-to-live (TTL) que o navegador aplica e o TTL que a Azion aplica. Para criar um:

1. **Abra a aba Cache Settings**

   Acesse [Azion Console](https://console.azion.com/) > **Applications** > **sua aplicação** e vá para a aba **Cache Settings**.

2. **Selecione + Cache**

3. **Nomeie o cache setting**

   Em **Name**, digite um nome que identifique o cache setting. Por exemplo: `/target-uri - Cache TTL`.

4. **Defina o cache do navegador**

   Em **Browser Cache**, selecione *Override cache settings* e defina a idade máxima em segundos.

5. **Defina o Max Age**

   Em **Cache**, selecione *Override cache behavior* e defina **Max Age** como o número de segundos que a Azion mantém o objeto.

6. **Selecione Save**

O cache setting aparece na aba **Cache Settings**. O mesmo cache setting também pode variar o objeto em cache por query string ou por cookie, que é o recurso [Advanced Cache Key](/pt-br/documentacao/plataforma/applications/cache/cache-settings/#application-accelerator).

Um cache setting entra em vigor apenas quando uma regra o aplica. Para aplicar este ao path `/target-uri`:

1. **Vá para a aba Rules Engine**

2. **Selecione + Rule**

3. **Nomeie a regra**

   Digite um nome para a regra. Por exemplo: `/target-uri - Cache TTL`.

4. **Selecione Request Phase**

5. **Selecione a variável na seção Criteria**

   Na seção **Criteria**, selecione a variável `${uri}`.

6. **Selecione starts with como operador de comparação**

7. **Digite o argumento**

   Digite `/target-uri` como argumento.

8. **Na seção Behaviors, selecione Set Cache Policy**

9. **Selecione o cache setting que você criou**

10. **Selecione Save**

As requisições cuja URI começa com `/target-uri` carregam o cache setting, tanto no TTL do navegador quanto no TTL da Azion que você definiu. Uma nova regra leva alguns minutos para propagar.

---

## Ignore o cache em um path

**Bypass Cache** impede que a Azion armazene em cache a resposta da origem para as requisições que correspondem a uma regra. Para criar a regra:

1. **Vá para a aba Rules Engine**

   Acesse [Azion Console](https://console.azion.com/) > **Applications** > **sua aplicação** e vá para a aba **Rules Engine**.

2. **Selecione + Rule**

3. **Nomeie a regra**

   Digite um nome para a regra. Por exemplo: `/target-uri - Bypass Cache`.

4. **Selecione Request Phase**

5. **Selecione a variável na seção Criteria**

   Na seção **Criteria**, selecione a variável `${uri}`.

6. **Selecione starts with como operador de comparação**

7. **Digite o argumento**

   Digite `/target-uri` como argumento.

8. **Na seção Behaviors, selecione Bypass Cache**

9. **Selecione Save**

As requisições cuja URI começa com `/target-uri` chegam à origem, e a Azion não armazena nenhuma resposta delas. Uma nova regra leva alguns minutos para propagar.

> **nota**
>
> **Bypass Cache** afeta apenas o cache na Azion, não o cache do navegador. O cache do navegador vem do cache setting que **Set Cache Policy** aplica.

Para mais informações, consulte [Bypass Cache](/pt-br/documentacao/plataforma/applications/rules-engine/#bypass-cache). Para a diferença entre **Bypass Cache** e um **Max Age** de `0` segundos, consulte [Variação de cache](/pt-br/documentacao/plataforma/applications/application-accelerator/variacao-de-cache/).

---

## Encaminhe cookies da origem ao usuário

**Forward Cookies** envia aos usuários o header `Set-Cookie` da origem, inclusive em um cache hit. Para criar a regra:

1. **Vá para a aba Rules Engine**

   Acesse [Azion Console](https://console.azion.com/) > **Applications** > **sua aplicação** e vá para a aba **Rules Engine**.

2. **Selecione + Rule**

3. **Nomeie a regra**

   Digite um nome para a regra. Por exemplo: `/target-uri - Forward Cookies`.

4. **Selecione Request Phase**

5. **Selecione a variável na seção Criteria**

   Na seção **Criteria**, selecione a variável `${uri}`.

6. **Selecione starts with como operador de comparação**

7. **Digite o argumento**

   Digite `/target-uri` como argumento.

8. **Na seção Behaviors, selecione Forward Cookies**

9. **Selecione Save**

As requisições cuja URI começa com `/target-uri` retornam ao usuário o header `Set-Cookie` da origem.

O header encaminhado pode carregar cookies de sessão. Para impedir que um usuário receba os cookies de sessão de outro usuário:

1. **Vá para a aba Cache Settings**

2. **Selecione + Cache**

3. **Nomeie o cache setting**

   Em **Name**, digite um nome que identifique o cache setting. Por exemplo: `/target-uri - Private cookies`.

4. **Aplique denylist aos cookies de sessão**

   Em **Application Accelerator**, abra **Cache vary by Cookies** e defina **Behavior** como *Denylist*.

5. **Digite os nomes dos cookies**

   Adicione cada cookie de sessão à lista de nomes de cookies.

6. **Selecione Save**

O cache setting aparece na aba **Cache Settings**, e ele mantém os cookies listados fora da cache key.

Para aplicar esse cache setting à regra que encaminha os cookies:

1. **Vá para a aba Rules Engine**

2. **Selecione a regra**

   Selecione a regra `/target-uri - Forward Cookies`.

3. **Na seção Behaviors, selecione + Behavior**

4. **Selecione Set Cache Policy**

5. **Selecione o cache setting**

   Selecione o cache setting `/target-uri - Private cookies`.

6. **Selecione Save**

A regra encaminha o header `Set-Cookie` da origem e aplica o cache setting. Uma alteração em uma regra leva alguns minutos para propagar. A mesma regra também pode carregar o behavior **Bypass Cache**.

---

## Próximos passos

- [Variação de cache](/pt-br/documentacao/plataforma/applications/application-accelerator/variacao-de-cache.md): O que Bypass Cache faz que um Max Age de 0 segundos não faz.
- [Cache Settings](/pt-br/documentacao/plataforma/applications/cache/cache-settings.md): Cada campo que um cache setting carrega, com os valores e os padrões dele.
- [Verifique indicadores de cache com o ModHeader](/pt-br/documentacao/guias/performance-e-confiabilidade/cache-e-purge/verificar-tempo-de-cache-da-pagina.md): Leia os headers de cache que uma requisição retorna e confirme a política que você aplicou.
- [Real-Time Purge](/pt-br/documentacao/plataforma/applications/cache/real-time-purge.md): Expire um objeto em cache antes que o Max Age dele termine.
