Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 11711|Resposta: 0

[Site O&M] Otimização de Desempenho do Site: Explicação detalhada das configurações de controle de cache

[Copiar link]
Publicado em 07/09/2015 19:30:51 | | | |


Cabeçalho HTTP expira e controle de cache


1. Conceito

O controle de cache é usado para controlar o cache HTTP (pode não ser parcialmente implementado em HTTP/1.0, apenas Pragma: no-cache é implementado)

Formate no pacote:

Cache-Control: cache-directive

Cache-diretiva pode ser a seguinte:

Pedido:
| "sem cache"
| "sem loja"
| "max-age" "=" delta-segundos
| "max-stale" [ "=" delta-segundos ]
| "min-fresh" "=" delta-segundos
| "Sem Transformação"
| "apenas-se-cacheado"
| "extensão de cache"


Resposta:
| "público"
| "privado" [ "=" <"> nome de campo <"> ]
| "no-cache" [ "=" <"> nome do campo <"> ]
| "sem loja"
| "Sem Transformação"
| "Deve-revalidar"
| "Proxy-Revalidar"
| "max-age" "=" delta-segundos
| "s-maxage" "=" delta-segundos
| "extensão de cache"

Parte da descrição:
Dividido em cacheáveis ou não
O público indica que a resposta pode ser armazenada em cache por qualquer área de cache.
Privado indica que toda ou parte da mensagem de resposta de um único usuário não pode ser processada pelo cache compartilhado. Isso permite que o servidor descreva apenas quando o usuário está
Mensagem de resposta parcial, que não é válida para solicitações de outros usuários.
no-cache indica que a mensagem de requisição ou resposta não pode ser armazenada em cache (HTTP/1.0 é substituído pelo no-cache do Pragma)
De acordo com o que pode ser armazenado em cache
O no-store é usado para evitar que informações importantes sejam publicadas acidentalmente. Enviar uma mensagem de solicitação fará com que as mensagens de solicitação e resposta não sejam em cache.
Tempo limite de acordo com o cache
max-age indica que o cliente pode receber uma resposta com uma vida útil no máximo de um tempo especificado (em segundos).
min-fresh indica que o cliente pode receber uma resposta com tempo de resposta menor que o tempo atual mais o tempo especificado.
max-stale indica que o cliente pode receber mensagens de resposta além do período de timeout. Se você especificar um valor para a mensagem max-stalking, então o cliente pode
Receba mensagens de resposta que excedam o valor especificado do período de tempo extra.
Expirações representam o período de existência, permitindo que o cliente não verifique (faça uma solicitação) antes desse tempo, o que equivale à idade máxima
Efeito. Mas se existirem ao mesmo tempo, são sobrescritos pela idade máxima do Controle de Cache.
Formato:
Expira = "Expira" ":" HTTP-data
Por exemplo
Expires: Thu, 01 Dec 1994 16:00:00 GMT (必须是GMT格式)

2. Aplicação
Set expires e controle de cache via META via HTTP
<meta http-equiv="Cache-Control" content="max-age=7200" />
<meta http-equiv="Expira" conteúdo="Seg, 20 Jul 2009 23:00:00 GMT" />
As configurações acima são apenas exemplos, e você pode realmente usar uma delas. Se você escrever dessa forma, ele só é válido para a página web, não para imagens ou outras solicitações na página, e não fará nenhum cache.
Dessa forma, o cliente terá mais requisições e, embora seja apenas algo que verifica o status de Última Modificação, o número de requisições certamente afetará a velocidade de navegação.
Se você quiser adicionar cache a um arquivo, pode usar o módulo mod_expire do Apache, que é escrito como
<IfModule mod_expires.c>
Expira Ativo em
ExpiraPadrão "acesso mais 1 dia"
</IfModule>
Lembro que o ExpiresActive está no modo Ativado, eu não tinha ativado no começo, e parece que, por mais que o YSlow seja, não consigo encontrar o mecanismo de cache. Se você adicionar assim, ele vai usar tudo por padrão.
Se quiser focar em tipos individuais de MIME, pode:
ExpiresByType imagem/gif "acesso mais 5 horas e 3 minutos"
Veja o Módulo Apache mod_expires
Além disso, ao clicar em Atualizar no navegador, as solicitações enviadas pelo cliente são todas max-age=0, indicando que a solicitação foi validada e enviada ao servidor
Se você pedir para checar o cache e depois atualizá-lo, geralmente receberá o 304 Não Modificado, o que significa que não há mudança.






Anterior:Encontre empregos de meio período e ganhe um dinheiro extra. Contrate trabalhadores de meio período com excelente tratamento, liquidação em dinheiro, mais de 300 por dia
Próximo:Como uma consulta difusa no Linq para SQL
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com