W3 Total de arquivos de cache, CDN e tema [fechados]

10

Eu atualizei o arquivo style.css da minha instalação do WordPress recentemente. A mudança foi eficaz: quando logado como administrador (meu blog é configurado para que o administrador nunca receba uma versão em cache do site, mas uma versão "ao vivo"), eu posso vê-los.

Mas meu blog está sendo veiculado por meio de um CDN (usando o W3 Total Cache). Por meio do CDN, as alterações não são efetivas: o CDN não veicula os arquivos modificados do meu tema. Mesmo que eu tenha feito o upload deles após a modificação (Painel de controle > Desempenho > CDN > Carregue os arquivos de tema.

Meu CDN é executado no AmazonCloud Front. E o Minify está desativado no Cache Total do W3.

O arquivo de tema que está sendo servido através do meu CDN é uma versão compactada: style.css.gzip

Devo "remover" os objetos do meu CDN ou esperar um pouco mais (já passou mais de uma semana). E sim, esvazio o cache do navegador que estou usando para ver se as alterações estão em vigor. Ou há algo mais que eu sinto falta?

Obrigado,

P.

    
por Parneix 14.08.2012 / 00:21

3 respostas

10

Você precisa

  1. Versão de seus arquivos (chamando style.css?ver=xxx.xxx ) e certificando-se de que sua distribuição do CloudFront tenha "Encadear as sequências de consulta" ativadas. Esta é a melhor opção, pois significa que tudo o que você precisa fazer é incrementar o número na string de consulta e o CloudFront buscará esse arquivo automaticamente.

  2. Invalide manualmente seus arquivos por meio do AWS Console (há uma guia de invalidação quando você edita sua distribuição)

Para ativar "Encaminhar sequências de consulta", faça o seguinte:

  • Edite sua distro da Cloudfront marcando a caixa de seleção à esquerda do 'i' e, em seguida, clique no botão "configurações de distribuição" na barra de ferramentas
  • Vá para a guia Comportamentos
  • Selecione a linha e clique em "Editar"
  • Altere "sequências de consulta direta" para Sim
  • Clique em "Sim, editar"
por anu 14.08.2012 / 00:27
8

Existe um "truque" simples para impedir o armazenamento em cache, quando o conteúdo do arquivo é alterado: Adicionar um número de versão, que é definido como a data / hora mais recente em que você alterou o arquivo.

add_action( 'wp_enqueue_scripts', 'wpse61738_non_cached_stylesheet' );
function wpse61738_non_cached_stylesheet()
{
    wp_enqueue_style( 
        'style-main',
        get_stylesheet_directory_uri().'/style.css',
        array(),
        filemtime( get_stylesheet_directory().'/style.css' )
    );
}

Isso adicionará ?ver=0123456789 ao seu link de referência style.css no seu cabeçalho. O número da versão só será alterado quando o conteúdo dos arquivos for modificado. Então você tem uma solução que funciona perfeitamente com a) cache do lado do servidor b) cache do navegador e atualiza automaticamente.

    
por kaiser 14.08.2012 / 00:37
-1

uma resposta curta ...

  1. Exclua todos os arquivos de seu tema e faça o upload deles novamente. algumas vezes a ação delete limpa o CDN

  2. Sim, você pode experimentar a opção Purgar, mas a exclusão e o novo upload geralmente são mais rápidos.

  3. Confira também as configurações no W3TC e na Amazon. O Cache padrão no W3TC geralmente é de 365 dias. que é 31536000 segundos:)

Na Amazon, haverá uma configuração para que os endpoints consultem novamente o CDN. Eu sei que na Rackspace o padrão é 24 horas.

    
por Damien 14.08.2012 / 00:26