Como corrigir o conflito de cache entre WP Rocket, LiteSpeed e Perfmatters
O que é o conflito de cache entre WP Rocket, LiteSpeed e Perfmatters?
O conflito de cache entre WP Rocket, LiteSpeed e Perfmatters ocorre porque WP Rocket e o plugin LiteSpeed Cache são, os dois, plugins de cache de página completa. A documentação oficial do WP Rocket lista o LiteSpeed Cache como incompativel: rodar dois plugins de cache de página ao mesmo tempo faz um sobrescrever o HTML do outro e gera resultados imprevisiveis. O Perfmatters e diferente: ele não faz cache de página, e um plugin de otimização. O problema com ele e duplicar a mesma otimização (minificar, adiar JavaScript, remover CSS não usado) que o WP Rocket já aplica, processando o mesmo arquivo duas vezes.
Como identificar
- Aviso do próprio WP Rocket no painel: ‘The following plugins are not compatible with this plugin and may cause unexpected results’, com botão para desativar o plugin conflitante
- Layout quebrado ou sem estilo no frontend depois de ativar Remove Unused CSS nos dois plugins (WP Rocket e Perfmatters)
- Funções em JavaScript param de responder (menu, slider, formulário) quando WP Rocket e Perfmatters adiam ou atrasam o mesmo script
- A nota do PageSpeed Insights não melhora ou até cai, mesmo com os dois plugins de otimização ativos
- Páginas servindo HTML desatualizado: ao limpar o cache de um plugin, o outro continua entregando a versão antiga em cache
Como prevenir
- Use apenas um plugin de cache de página por site: ou WP Rocket, ou o plugin LiteSpeed Cache, nunca os dois ao mesmo tempo
- Antes de ligar uma otimização no Perfmatters (minificar, remover CSS, adiar JS), confirme que a mesma opção esta desligada no WP Rocket
- Sempre que mudar uma configuração de cache ou otimização, limpe o cache e teste em janela anonima antes de considerar resolvido
- Documente qual plugin e responsável por cada otimização para a equipe não reativar a opção duplicada por engano
Causa
- WP Rocket e o plugin LiteSpeed Cache ativos juntos: os dois são cache de página completa e a doc oficial do WP Rocket marca o LiteSpeed Cache como incompativel, porque um sobrescreve o HTML em cache do outro.
- A opção Remove Unused CSS ligada ao mesmo tempo no WP Rocket (Otimizar arquivos CSS) e no Perfmatters (CSS -> Remove Unused CSS): o mesmo CSS crítico e calculado duas vezes e remove regras que a página precisa, quebrando o layout.
- Defer JavaScript do WP Rocket e Defer/Delay JavaScript do Perfmatters atuando sobre os mesmos arquivos: o script recebe o atributo defer em dobro e perde a ordem de carregamento que algumas bibliotecas exigem.
- Minificacao de CSS e JavaScript ativada nos dois plugins ao mesmo tempo, concatenando um arquivo já minificado e gerando código invalido.
- Hospedagem em servidor LiteSpeed com o LSCache habilitado no nível do servidor (.htaccess) ALÉM do plugin LiteSpeed Cache, criando uma terceira camada de cache sobre o WP Rocket.
Como resolver
- Escolha um único plugin de cache de página e desative o outro: WP Rocket e o plugin LiteSpeed Cache não podem coexistir. Escolha um deles como o cache de página e desative completamente o outro em Plugins. Se você vai ficar com o WP Rocket, desative o plugin LiteSpeed Cache.
Painel: Plugins -> Plugins Instalados -> LiteSpeed Cache -> Desativar wp plugin deactivate litespeed-cache - Limpe o cache antigo que o plugin desativado deixou para tras: Desativar o plugin não apaga os arquivos já gerados. Limpe a pasta de cache do LiteSpeed e o cache do WP Rocket para o site parar de servir HTML em cache antigo.
rm -rf wp-content/litespeed/ wp rocket clean --confirm Painel: WP Rocket -> Dashboard -> Limpar cache - Se a hospedagem usa servidor LiteSpeed, mantenha so o LSCache do servidor: Em servidor LiteSpeed, o cache pode estar ativo no nível do servidor mesmo sem o plugin. O WP Rocket limpa esse cache automaticamente quando o cache dele e limpo, entao o plugin LiteSpeed Cache não e necessário. Confirme que a regra do LSCache esta no .htaccess e deixe o plugin desativado.
grep -i litespeed_cache .htaccess - Tire as otimizacoes duplicadas do Perfmatters: O Perfmatters pode continuar ativo com WP Rocket, mas cada otimização tem de ficar em um plugin so. Como a doc do WP Rocket avisa que o Remove Unused CSS dele e incompativel com o do Perfmatters, deixe Remove Unused CSS, minificacao e defer/delay de JavaScript ligados em apenas um dos dois.
Painel: Perfmatters -> Assets -> CSS -> Remove Unused CSS = Off Painel: Perfmatters -> Assets -> JavaScript -> Defer JavaScript = Off Painel: WP Rocket -> Otimizar arquivos CSS -> Remover CSS não utilizado = On - Limpe o cache e revalide layout, JavaScript e PageSpeed: Depois de centralizar cache e otimizacoes, limpe tudo de novo e teste em janela anonima. Confira se o layout voltou, se os scripts respondem e rode o PageSpeed para confirmar o ganho.
Painel: WP Rocket -> Dashboard -> Limpar cache https://pagespeed.web.dev/
# Auditar plugins de cache/otimizacao ativos (WP-CLI)
wp plugin list --status=active --field=name | grep -Ei 'rocket|litespeed|perfmatters|w3-total|wp-super|fastest|optimize'
# Manter SO o WP Rocket como cache de pagina: desativar o plugin LiteSpeed Cache
wp plugin deactivate litespeed-cache
# Limpar o cache antigo deixado para tras e o cache do WP Rocket
rm -rf wp-content/litespeed/
wp rocket clean --confirm














