Smart Rules

Geral

Define regras para o funcionamento geral do site baseando-se nos critérios definidos, podendo personalizar a execução de todos os serviços da GoCache.

As seguintes ações podem ser tomadas:

Rate Limit

rate_limit

Permite ligar ou desligar o Rate Limit com base nos critérios definidos.

Define Cabeçalho de Requisição

request_header

Inclui ou sobrescreve cabeçalho(s) na requisição ao servidor de hospedagem do site.

Define Cabeçalho de Resposta

defines_response_header

Inclui um cabeçalho na resposta de uma requisição que será enviada para o navegador que está acessando o site.

Exemplo: Adicionar cabeçalho de segurança.

Define cabeçalho de resposta: Strict-Transport-Security: max-age=86400

Tempo de Expiração de Cache

ttl

Define quanto tempo os objetos ficarão em cache na CDN sem precisar serem atualizados no servidor de origem. Após o TTL definido, a CDN busca uma nova versão do(s) conteúdo(s) definido nos critérios. Os tempos permitidos variam de 10 segundos à 30 dias.

O TTL configurado pode não surtir efeito, caso a opção de ignorar os cabeçalhos Cache-Control e/ou Expires seja desabilitada. Para entender melhor como funciona o TTL clique aqui.

Tipo de Cache

cache_type

Define quais conteúdos serão cacheados pela GoCache.

Não Fazer Cache

Desabilita completamente o cache realizado pela GoCache.

Somente Conteúdo Estático

Faz o cache somente de conteúdos que são considerados estáticos pela GoCache. Para saber quais conteúdos são considerados estáticos clique aqui.

Full Cache

Faz cache de todos os objetos com os critérios estabelecidos pela regra, inclusive de conteúdo dinâmico. Respeitando cabeçalhos de gerenciamento de cache.

Comportamento do Cache

cache_behavior

Define a forma que os objetos são armazenados em cache.

Padrão

Cada variação na query string será tratada como um objeto diferente em cache.

Ignorar Query String

Entrega o mesmo objeto independente de variações na query string.

Modo SSL

ssl_mode

Define a maneira que será feita a comunicação entre a CDN e o servidor de hospedagem.

Edge Security

Encripta a comunicação entre os visitantes do site e a GoCache (borda), mas não entre a GoCache e o servidor de hospedagem.

Full Security

Encripta a comunicação de ponta a ponta, desde o navegador do cliente, até o servidor de hospedagem.

Neste modo é necessário um certificado instalado no servidor de hospedagem, mesmo que não seja um válido.

Cache do Navegador

browser_cache

Define o tempo que o conteúdo estático do site ficará armazenado no cache local do navegador dos usuários, sem precisar requisitar os servidores de borda da CDN. Após o TTL determinado, o navegador solicita uma nova versão do conteúdo. O tempo estipulado vai de 10 segundos à 1 ano, podendo desativar esse cache.

Sobrescreve URI

overwrite_uri

Permite sobrescrever a URI de uma requisição. Podendo utilizar * no campo de URL para utilizá-lo na nova URI.

Exemplo:

URL: /pastacliente/*  Sobrescreve URI: /$1

Caso seja requisitado /pastacliente/imagem.jpg, este conteúdo será buscado nos servidores de origem na URI /imagem.jpg.

Customiza Chave de Cache

cache_key

Permite diferenciar os objetos em cache, que possuam a mesma URL, através de uma string ou variável.

Quanto é adicionado uma chave de cache, os conteúdos da página correspondentes a essa regra terão uma novo caminho de cache, assim podendo fazer a diferenciação de conteúdo em uma mesma URL.

Uma string pode conter no máximo 50 caracteres.

Exemplo: Fazer com que todos os arquivos .html, .php e .css da URL /noticias, sejam cacheados com a chave de cache “paginas”.

URL: /noticias/*.(html|php|css)  Customiza Chave de Cache: paginas

cache_key_rule

Assim pode ser feito uma limpeza de cache em /noticias/*paginas, que fará a limpeza de arquivos .html, .php e .css, mas os outros arquivos nesta URL se manterão os mesmos, como arquivos .js.

Compressão Gzip

gzip_compression

Permite ativar ou desativar a compressão gzip nos conteúdos que os critérios se referem. Esse recurso comprime páginas e recursos estáticos antes da entrega aos usuários. Essa compressão só ocorre se o navegador do usuário tiver suporte. Para saber quais conteúdos a GoCache comprime com o Gzip clique aqui.

Ignora Cabeçalho Expires

header_expires

Permite ignorar ou não o cabeçalho Expires enviado pela hospedagem.

O cabeçalho Expires informa a data e hora após a qual o conteúdo da resposta será considerado desatualizado. Esse cabeçalho influência no cacheamento de conteúdos da CDN.

Para ler mais sobre os cabeçalhos que podem ser ignorados provenientes da hospedagem e qual é a hierarquia de ordem de cacheamento clique aqui.

Ignora Cabeçalho Cache-Control

header_cache_control

Permite ignorar ou não o cabeçalho Cache-Control.

O cabeçalho Cache-Control informa diretivas que definem como será feito o cache das requisições e do conteúdo apresentando. Esse cabeçalho influência no cacheamento de conteúdos da CDN.

Para ler mais sobre os cabeçalhos que podem ser ignorados provenientes da hospedagem e qual é a hierarquia de ordem de cacheamento clique aqui.

Ignora Cabeçalho Vary

header_vary

Permite ignorar ou não o cabeçalho Vary.

É comumente utilizado com o valor User-Agent, o que duplicaria um mesmo objeto em cache para cada navegador ou dispositivo diferente que acessar o mesmo objeto, afetando o tempo de resposta dos mesmos.

Para entender mais sobre os cabeçalhos que podem ser ignorados enviados da hospedagem clique aqui.

Cache Requisição 301

cache_301

Permite ativar ou desativar o cache de requisições que retornem o status code 301.

Cache Requisição 302

cache_302

Permite ativar ou desativar o cache de requisições que retornem o status code 302.

Cache Requisição 404

cache_404

Permite ativar ou desativar o cache de requisições que retornem o status code 404.

IP ou Hostname de Destino

destination_ip

Permite direcionar a requisição para um endereço IP ou hostname de servidor de hospedagem diferente do configurado na página de Websites e DNS.

Um caso de uso comum para esta funcionalidade é quando você tem partes específicas da aplicação que são atendidas por outro servidor.

Exemplo: Todas as requisições feitas em /static/* serão direcionada para um bucket S3 na Amazon.

URL: http://exemplo.com.br/static/*  IP ou hostname de destino: meubucket.s3.amazonaws.com

Sobrescreve Cabeçalho Host

overwrite_header_host

Este recurso sobrescreve o cabeçalho Host enviado para o servidor de hospedagem em uma requisição. Geralmente é utilizado para evitar que seja necessário alterar as configurações de um servidor web.

Exemplo: Utilizar a GoCache para acelerar e economizar acessos em um bucket S3 da Amazon.

Define Cross-Origin

cross_origin

CORS (Cross-Origin Resource Sharing) informa aos navegadores que um recurso pode ser acessado a partir de um site específico. Permite definir quais origens terão acesso a este recurso definindo o cabeçalho de resposta Access-Control-Allow-Origin.

Para saber como configurar CORS clique aqui.

Exemplo: Permitir que seja acessado a os arquivos de outro domínio.

Define Cross-Origin: https://outrodominio.com.br/

Remove Cabeçalho de Resposta

remove_response_header

Esta ação remove um cabeçalho enviado pelo servidor de origem na resposta de uma requisição.

Exemplo: Remover o cabeçalho X-Powered-By, para evitar expor a versão do PHP.

WAF

sr_waf

Define se o WAF GoCache estará ligado ou desligado com base nos critérios definidos.

WAF - Nível de Segurança

sr_waf_security_level

Define o nível de segurança que o WAF GoCache. vai atuar. Sendo eles:

Alto; Médio; *Baixo.

WAF - Modo de Segurança

sr_waf_security_mode

Define o tipo de ação que será tomada pelo WAF GoCache. Tendo as opções:

  • Bloquear: O acesso será impedido de prosseguir. Uma página de erro é exibida;
  • Simular: Será gerado um evento de segurança, mas nenhuma ação será tomada;
  • Desafiar: Será exibida uma página com um desafio (ReCaptcha) para que o visitante prove ser um humano.

Define Cabeçalho Connection

sr_header_connection

Define o cabeçalho Connection da requisição que, por padrão, não mantém a conexão aberta, pois pode causar problemas em alguns servidores de hospedagem. As opções são:

  • Close: Não mantém a conexão ao servidor de origem ativa;
  • Keep-Alive: Mantém a conexão ao servidor de origem ativa.