Configure o armazenamento em cache para sua distribuição do Lightsail - Amazon Lightsail

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configure o armazenamento em cache para sua distribuição do Lightsail

Um comportamento de cache permite que você configure o que é armazenado em cache ou não na sua origem pela sua distribuição do Amazon Lightsail. Por exemplo, é possível especificar o cache de diretórios individuais, arquivos ou tipos de arquivo da sua origem. Você também pode especificar os métodos HTML e cabeçalhos que são encaminhados para sua origem. Neste guia, mostraremos como alterar o comportamento do armazenamento em cache da sua distribuição. Para obter mais informações sobre distribuições, consulte Distribuições de rede de entrega de conteúdo.

Tópicos

Predefinição de armazenamento em cache

A predefinição de armazenamento em cache ajusta automaticamente as configurações de sua distribuição para o tipo de conteúdo que você hospeda na sua origem. Por exemplo, escolher a opção Ideal para conteúdo estático ajusta automaticamente sua distribuição com configurações que funcionam melhor com sites estáticos. Se seu site estiver hospedado em uma WordPress instância, escolha a WordPress predefinição Best for para que sua distribuição seja configurada automaticamente para funcionar com seu WordPress site.

Você pode escolher uma das seguintes predefinições de caching para sua distribuição:

  • Ideal para conteúdo estático: essa predefinição configura a sua distribuição para armazenar tudo em cache. Essa predefinição é ideal se você hospedar conteúdo estático (por exemplo, páginas HTML estáticas) em sua origem, ou conteúdo que não muda para cada usuário que visita seu site. Todo o conteúdo em sua distribuição é armazenado em cache quando você escolhe essa predefinição.

  • Ideal para conteúdo dinâmico: essa predefinição configura sua distribuição para não armazenar nada em cache, exceto os arquivos que você especificar como Cache na seção Sobreposições de diretórios e arquivos, na página Criar uma distribuição. Para obter mais informações, consulte Sobreposições de diretórios e arquivos mais adiante neste guia. Essa predefinição é ideal se você hospedar conteúdo dinâmico em sua origem, ou conteúdo que pode mudar para cada usuário que visita seu site ou aplicação web.

  • Ideal para WordPress: essa predefinição configura sua distribuição para armazenar em cache nada, exceto os arquivos wp-includes/ e os wp-content/ diretórios da sua instância. WordPress Essa predefinição é ideal se sua origem for uma instância que usa o blueprint WordPress Certified by Bitnami e Automattic (excluindo o blueprint multisite). Para obter mais informações sobre essa predefinição, consulte Melhor predefinição para armazenamento em WordPress cache.

    nota

    A predefinição Configurações personalizadas não pode ser selecionada. Ela é selecionada automaticamente para você se você escolher uma predefinição mas depois modificar manualmente as configurações da sua distribuição.

Uma predefinição de cache só pode ser especificada no console do Lightsail. Ele não pode ser especificado usando a API AWS CLI e os SDKs do Lightsail.

Melhor para armazenamento em WordPress cache predefinido

Quando você seleciona uma instância que usa o blueprint WordPress Certified by Bitnami e Automattic como origem da sua distribuição, o Lightsail pergunta se você deseja aplicar a predefinição Best for caching à sua distribuição. WordPress Se você aplicar o presente, sua distribuição será configurada automaticamente para funcionar melhor com seu WordPress site. Não há outras configurações de distribuição que você precisa aplicar. O melhor é WordPress predefinir para armazenar em cache nada, exceto os arquivos wp-includes/ e os wp-content/ diretórios do seu WordPress site. Ele também configura sua distribuição para limpar seu cache todos os dias (tempo de vida do cache de 1 dia), permitir todos os métodos HTTP, encaminhar apenas o cabeçalho Host, não encaminhar cookies e encaminhar todas as cadeias de consulta.

Importante

Você deve editar o arquivo de WordPress configuração em sua instância para que seu WordPress site funcione com sua distribuição. Para obter mais informações, consulte Configurar sua WordPress instância para funcionar com sua distribuição.

Comportamento padrão

Um comportamento padrão especifica como sua distribuição lida com o armazenamento de conteúdo em cache. O comportamento padrão de sua distribuição é especificado automaticamente, dependendo da Predefinição de armazenamento em cache que você selecionar. Se você selecionar um comportamento padrão diferente, a predefinição de cache será automaticamente alterada para Configurações personalizadas.

Você pode escolher um dos seguintes comportamentos padrão para sua distribuição:

  • Armazenar tudo em cache: esse comportamento configura sua distribuição para armazenar em cache e servir todo o seu site como conteúdo estático. Essa opção é ideal se sua origem hospeda conteúdo que não muda dependendo de quem o visualiza, ou se seu site não usa cookies, cabeçalhos ou cadeias de consulta para personalizar o conteúdo.

  • Não armazenar nada em cache: esse comportamento configura sua distribuição para armazenar em cache somente os arquivos de origem e os caminhos de pasta especificados. Essa opção é ideal se seu site ou aplicação Web usar cookies, cabeçalhos e cadeias de consulta para personalizar conteúdo para usuários individuais. Se você selecionar esta opção, é preciso especificar as sobreposições de diretório e caminho de arquivo para armazenar em cache.

Sobreposições de diretórios e arquivos

A sobreposição de diretório e arquivo pode ser usado para se sobrepor ao comportamento padrão selecionado ou adicionar uma exceção ao comportamento padrão selecionado. Por exemplo, se você escolheu armazenar tudo em cache, use uma sobreposição para especificar um diretório, arquivo ou tipo de arquivo que sua distribuição não deve armazenar em cache. Se você escolheu Não armazenar nada em cache, você também tem a opção de usar uma sobreposição para especificar um diretório, arquivo ou tipo de arquivo que sua distribuição deve armazenar em cache.

Na seção Sobreposições de diretórios e arquivos, você pode especificar um caminho para um diretório ou um arquivo para armazenar ou não em cache. Use um símbolo de asterisco para especificar diretórios curinga (path/to/assets/*) e tipos de arquivo (*.html, *jpg, *js). Os diretórios e caminhos de arquivo diferenciam maiúsculas e minúsculas.

Estes são alguns exemplos de como você pode especificar sobreposições de diretório e arquivo:

  • Especifique o seguinte para armazenar em cache todos os arquivos na raiz do documento de um servidor web Apache executado em uma instância do Lightsail.

    var/www/html/
  • Especifique o seguinte para armazenar em cache apenas os arquivos na raiz do documento de um servidor Web Apache.

    var/www/html/index.html
  • Especifique o seguinte para armazenar em cache apenas os arquivos .html na raiz do documento de um servidor Web Apache.

    var/www/html/*.html
  • Especifique o seguinte para armazenar em cache apenas os arquivos .jpg, .png e .gif no subdiretório de imagens da raiz do documento de um servidor Web Apache.

    var/www/html/images/*.jpg
    var/www/html/images/*.png
    var/www/html/images/*.gif

    Especifique o seguinte para armazenar em cache todos os arquivos no subdiretório de imagens da raiz do documento de um servidor Web Apache.

    var/www/html/images/

Configurações avançadas de armazenamento em cache

As configurações avançadas podem ser usadas para especificar o tempo de vida do conteúdo em cache em sua distribuição, os métodos HTTP permitidos, encaminhamento de cabeçalho HTTP, encaminhamento de cookies e encaminhamento de cadeias de consulta. As configurações avançadas que você especificar se aplicam somente ao diretório e aos arquivos que sua distribuição armazena em cache, incluindo as sobreposições de diretório e arquivo que você especificou como Cache.

Agora, você pode definir as seguintes configurações avançadas:

Vida útil do cache (TTL)

Controla o tempo que o conteúdo permanece no cache da distribuição do antes que a sua distribuição encaminhe outra solicitação para sua origem para determinar se o conteúdo foi atualizado. O valor padrão é de um dia. Diminuir a duração permite que você sirva melhor o conteúdo dinâmico. Aumentar a duração significa que os usuários obtêm melhor performance, pois é mais provável que seus arquivos sejam fornecidos diretamente do local da borda. Aumentar a duração também reduz a carga na origem, pois sua distribuição extrai conteúdo com menos frequência.

nota

O valor especificado é aplicado apenas quando sua origem não adiciona cabeçalhos HTTP, como Cache-Control max-age, Cache-Control s-maxage ou Expires, ao seu conteúdo.

Métodos HTTP permitidos

Controla os métodos HTTP que sua distribuição processa e encaminha para sua origem. Os métodos HTTP indicam a ação desejada a ser executada na origem. Por exemplo, o método GET recupera dados de sua origem, e o método PUT solicita que a entidade fechada seja armazenada em sua origem.

Você pode escolher uma das seguintes opções de método HTTP para sua distribuição:

  • Permitir os métodos GET, HEAD, OPTIONS, PUT, POST, PATCH e DELETE

  • Permitir os métodos GET, HEAD e OPTIONS

  • Permitir os métodos GET e HEAD

Sua distribuição sempre armazena em cache respostas às solicitações GET e HEAD. Sua distribuição também armazena em cache as respostas às solicitações OPTIONS, se você optar por permitir essas solicitações. Sua distribuição não armazena em cache respostas a outros métodos HTTP.

Importante

Se você configurar a distribuição para permitir todos os métodos HTTP compatíveis, é necessário configurar sua instância de origem para lidar com todos os métodos. Por exemplo, se você configurar sua distribuição para aceitar esses métodos porque deseja usar POST, é necessário configurar seu servidor de origem para lidar com solicitações DELETE de forma apropriada para que os visualizadores não possam excluir recursos que você não queria que eles excluam. Para obter mais informações, pesquise a documentação de seu site ou aplicação web.

Encaminhamento de cabeçalho HTTP

Controla se sua distribuição armazena em cache seu conteúdo com base nos valores dos cabeçalhos especificados e, em caso afirmativo, quais deles. Os cabeçalhos HTTP carregam informações sobre o navegador do cliente, a página solicitada, a origem e muito mais. Por exemplo, o cabeçalho Accept-Language envia o idioma do cliente (por exemplo, en-US para inglês), para que a origem possa responder com conteúdo no idioma do cliente, se estiver disponível.

Você pode escolher uma das seguintes opções de cabeçalho HTTP para sua distribuição:

  • Não encaminhar cabeçalhos

  • Encaminhar somente os cabeçalhos que eu especificar

Quando você seleciona Não encaminhar cabeçalhos, sua distribuição não armazena em cache o conteúdo com base nos valores do cabeçalho. Independentemente da opção escolhida, sua distribuição encaminhará determinados cabeçalhos para sua origem e realizará ações específicas com base nos cabeçalhos que você encaminhou.

Encaminhamento de cookies

Controla se a sua distribuição encaminha cookies para sua origem e, em caso afirmativo, quais deles. Um cookie contém uma pequena quantidade de dados enviados para a origem, como informações sobre as ações de um visitante em uma página Web de sua origem, bem como quaisquer informações fornecidas pelo visitante, como seu nome e interesses.

Você pode escolher uma das seguintes opções de encaminhamento de cookies para sua distribuição:

  • Não encaminhar cookies

  • Encaminhar todos os cookies

  • Encaminhar cookies que eu especificar

Se você escolher Encaminhar todos os cookies, sua distribuição encaminhará todos os cookies, independentemente de quantos deles a sua aplicação usa. Se você escolheu Encaminhar cookies que eu especificar, insira os nomes dos cookies que você deseja que sua distribuição encaminhe na caixa de texto exibida. Você pode especificar os seguintes símbolos curinga ao especificar nomes de cookies:

  • * corresponde a zero ou mais caracteres no nome do cookie

  • ? corresponde a exatamente um caractere no nome do cookie

Por exemplo, imagine que o visualizador solicite que um objeto inclua um cookie denominado userid_member-number. Em que cada usuário tem um valor exclusivo para member-number (userid_123, userid_124, userid_125, etc.). Você quer que a sua distribuição armazene em cache uma versão separada do conteúdo para cada membro. Isso pode ser feito encaminhando todos os cookies para a sua origem, mas as solicitações do visualizador incluem alguns cookies que você não quer que sua distribuição armazene em cache. Como alternativa, é possível especificar o seguinte valor como um nome de cookie, fazendo com que sua distribuição encaminhe todos os cookies que comecem com userid_ para a sua origem: userid_*

Encaminhamento de cadeia de consulta

Controla se a sua distribuição encaminha cadeias de consulta para sua origem e, em caso afirmativo, quais delas. Uma cadeia de consulta é uma parte de uma URL que atribui valores a parâmetros especificados. Por exemplo, a URL https://example.com/over/there?name=ferret contém a cadeia de consulta name=ferret. Quando um servidor recebe uma solicitação para tal página, ele pode executar um programa, passando a cadeia de consulta name=ferret inalterada para o programa. O ponto de interrogação é usado como um separador e não faz parte da cadeia de consulta.

Você pode optar por fazer com que sua distribuição não encaminhe cadeias de consulta, ou encaminhe somente as cadeias de consulta que você especificar. Escolha não encaminhar cadeias de consulta caso sua origem retorne a mesma versão do conteúdo, independentemente dos valores dos parâmetros da cadeia de consulta. Isso aumenta a probabilidade de que a sua distribuição fornecerá uma solicitação do cache, o que melhora a performance e reduz a carga na sua origem. Escolha encaminhar somente as cadeias de consulta que você especificar caso o servidor de origem retorne diferentes versões do conteúdo com base em um ou mais parâmetros de cadeia de consulta.

Alterar o comportamento de armazenamento em cache da sua distribuição

Conclua o procedimento a seguir para alterar o comportamento padrão de armazenamento em cache da sua distribuição.

  1. Faça login no console do Lightsail.

  2. Na página inicial do Lightsail, escolha a guia Networking (Redes).

  3. Escolha o nome da distribuição para a qual você deseja alterar o comportamento padrão de armazenamento em cache.

  4. Escolha a guia Cache na página de gerenciamento da sua distribuição.

  5. Na seção Configurar o armazenamento em cache, escolha a predefinição de armazenamento em cache para sua distribuição. Para obter mais informações, consulte Predefinição de armazenamento em cache.

  6. Selecione Alterar o comportamento padrão de armazenamento em cache para alterar o comportamento padrão de sua distribuição. Em seguida, escolha um comportamento padrão para sua distribuição. Para obter mais informações, consulte Comportamento padrão.

  7. Selecione Adicionar caminho para adicionar uma sobreposição de diretório e arquivo ao comportamento de armazenamento em cache da sua distribuição. Para obter mais informações, consulte Sobreposições de diretórios e arquivos.

  8. Escolha o ícone de lápis exibido ao lado da configuração avançada que deseja editar para sua distribuição. Para obter mais informações, consulte Configurações avançadas de armazenamento em cache.

Ao salvar as alterações na configuração da sua distribuição, ela começa a propagar as alterações para todos os locais da borda. Enquanto sua configuração não é atualizada em um local da borda, a sua distribuição continua fornecendo seu conteúdo desse local com base na configuração anterior. Após a atualização da sua configuração em um local da borda, sua distribuição imediatamente começa a fornecer seu conteúdo desse local com base na nova configuração.

Suas alterações não são instantaneamente propagadas para todos os locais da borda. Quando a propagação for concluída, o status da sua distribuição mudará de InProgressAtivado. Enquanto a sua distribuição propaga suas alterações, não é possível determinar se um local da borda está fornecendo seu conteúdo com base na configuração anterior ou na nova configuração.