Hospedagem e Plugins WordPress

Tornando o WordPress rápido e seguro: uma lista de verificação de desempenho e plugins

O WordPress é sempre tão rápido e seguro quanto aquilo que o executa. Aqui está a lista de verificação prática que aplicamos a todos os sites WordPress que hospedamos — o que colocar em cache, o que proteger e quais plugins merecem seu lugar em detrimento daqueles que a plataforma torna redundantes.

O WordPress é tão bom quanto aquilo que o executa

O WordPress alimenta uma grande parcela da web porque é flexível, mas essa flexibilidade também é o motivo pelo qual ele se torna lento e inseguro: uma instalação padrão consulta o banco de dados dezenas de vezes por página, transmite sua versão e sua pilha de tecnologias para qualquer um que olhar, e convida você a acumular plugins até que o desempenho e a superfície de ataque aumentem silenciosamente. Nada disso é uma falha no WordPress, mas sim uma consequência de executá-lo em uma infraestrutura que não faz nada para ajudar.

A boa notícia é que o mesmo punhado de decisões resolve a maior parte disso, e são decisões sobre a pilha tecnológica em vez do conteúdo. Faça cache agressivamente na camada certa, mantenha o banco de dados fora do caminho crítico, execute os poucos plugins que realmente fazem por merecer o espaço, mantenha tudo atualizado e isole o site para que qualquer problema permaneça contido. Esta postagem é essa lista de verificação, na ordem em que a aplicamos a todos os sites WordPress na plataforma.

Cache no servidor, não apenas em um plugin

O maior fator isolado para a velocidade do WordPress é não executar o WordPress de forma alguma na maioria das visitas. Uma solicitação padrão inicializa o WordPress, executa seus plugins e consulta o banco de dados antes de enviar um único byte; um cache de página inteira serve a página concluída diretamente do servidor web no acesso seguinte, ignorando toda essa inicialização. O local onde esse cache reside importa: um plugin de cache fica dentro do PHP, portanto o PHP ainda inicia antes que o cache possa responder, enquanto um cache em nível de servidor responde mais cedo na solicitação e armazena as páginas em um formato que o servidor pode liberar instantaneamente.

Cada site WordPress que hospedamos roda no LiteSpeed Enterprise com LSCache em nível de servidor, e nosso próprio plugin de cache conecta o WordPress a ele corretamente desde o primeiro uso — pré-instalado e com atualização automática, sendo menos uma coisa para configurar ou manter atualizada. Em uma origem que não seja LiteSpeed, o mesmo plugin simplesmente não emite cabeçalhos de página inteira e não interfere enquanto o cache de objetos continua funcionando, de modo que um site migrado nunca fica com a configuração incompleta. A regra prática para a sua lista de verificação: um cache de página inteira, no servidor, e não empilhe um segundo plugin de cache sobre ele — eles entram em conflito.

O cache de objetos e o banco de dados

Nem toda requisição pode ser uma página estática. Sessões de usuários logados, a área administrativa, buscas, carrinhos e qualquer fragmento personalizado precisam executar PHP, e, nesses casos, o objetivo muda de ignorar a aplicação para ignorar o banco de dados. Um cache de objetos por site — Redis, no nosso caso — armazena os resultados de leituras repetidas do banco de dados na memória, de modo que as mesmas opções, transients e consultas não sejam requisitadas ao banco de dados a cada acesso. O efeito aparece exatamente onde o cache de página inteira não pode ajudar: um painel administrativo mais rápido, carrinhos mais rápidos e uma carga de banco de dados muito menor sob alto tráfego.

A palavra que importa é por site. Um cache de objetos compartilhado significa que um site movimentado ou mal escrito pode despejar os dados em cache de todos os outros e esgotar o banco de dados dos vizinhos; um cache dedicado por site, combinado com limites de banco de dados por site, mantém esse raio de impacto contido. Na sua lista de verificação, trate um cache de objetos persistente como obrigatório para qualquer site com usuários logados ou uma loja, e desconfie de hospedagens onde ele seja compartilhado entre locatários.

Os plugins que vale a pena usar — e aqueles que a plataforma substitui

Cada plugin que você adiciona é um código executado em solicitações e uma porta pela qual alguém pode um dia passar, portanto, o objetivo honesto é usar o menor número possível de plugins que façam o máximo. Um bom provedor de hospedagem elimina a necessidade de uma categoria inteira deles: com cache em nível de servidor, cache de objetos gerenciado e backups na plataforma, você não precisa de um plugin de cache, de um plugin de cache de objetos separado ou de um plugin de backup — essas tarefas são feitas melhor abaixo do WordPress, e executá-las por cima só adiciona conflito e sobrecarga.

O que resta vale a pena rodar é o pequeno conjunto que adiciona capacidade genuína: os plugins de que o seu site realmente precisa para funcionar e — na nossa plataforma — os dois plugins de nível de repositório que construímos e fornecemos com cada site. Nosso plugin de cache conecta o WordPress ao cache do servidor e gerencia a limpeza inteligente para que uma edição limpe apenas as páginas que deve. Nosso plugin de footprint remove os rastros que uma instalação padrão do WordPress transmite — a tag de versão e de gerador, endpoints de descoberta, XML-RPC, pingbacks e o cabeçalho powered-by — a cada implantação, para que uma atualização de plugin ou tema não possa recolocá-los silenciosamente. Ambos são construídos segundo os padrões do diretório de plugins do WordPress.org, são gratuitos e se atualizam sozinhos.

Mantendo o WordPress seguro e atualizado

A maioria das invasões ao WordPress não é sofisticada; ela é antiga. Um núcleo, tema ou plugin desatualizado com uma vulnerabilidade conhecida e publicada é, de longe, a forma mais comum de os sites serem atingidos, o que torna manter-se atualizado o trabalho de segurança mais valioso que existe — e o mais entediante, razão pela qual é ignorado. A hospedagem gerenciada deve tirar isso das suas mãos: aplicando correções na infraestrutura abaixo do WordPress e tornando as atualizações do núcleo e dos plugins seguras de aplicar, fornecendo uma cópia de staging para testá-las e um backup para o qual retornar.

Além de poupar dinheiro, espere que os limites sejam impostos para você: varredura de malware ativada por padrão para que uma infecção seja evitada em vez de descoberta por um visitante, isolamento para que um site comprometido não possa alcançar outro, proteção contra DDoS na borda e TLS em todo lugar com certificados renovados automaticamente. Nada disso substitui a higiene básica — credenciais fortes, acesso com privilégios mínimos, remoção de plugins que você não usa mais —, mas significa que a infraestrutura não é o elo fraco. Na sua lista de verificação, a pergunta para qualquer provedor de hospedagem é simples: a segurança é o padrão ou um pacote que você compra?

WooCommerce e as páginas que você nunca deve armazenar em cache

Uma loja é onde o cache agressivo obtém sua maior vitória e causa seu maior estrago se for ingênuo. As páginas de catálogo, produto e categoria são as que têm mais tráfego e são as mais passíveis de cache que você possui, e servi-las a partir de um cache de página inteira é a melhor coisa que você pode fazer pela velocidade de uma loja. Mas as páginas de carrinho, finalização de compra e conta são pessoais e nunca devem ser servidas a partir de um cache compartilhado — faça isso e um comprador verá a cesta de outra pessoa, o que é tanto uma loja quebrada quanto uma falha de privacidade.

A forma de ter ambos é fazer cache da página e criar lacunas para as partes dinâmicas. As Edge Side Includes renderizam o fragmento do carrinho, os totais do mini carrinho e o estado da conta por requisição, enquanto o restante da página é servido a partir do cache, e o carrinho, o checkout, a minha conta e quaisquer páginas de nonce ou sessão são excluídas por padrão. A atualização é gerenciada por uma limpeza automática inteligente que é acionada quando um produto, preço ou pedido é alterado, para que um preço desatualizado nunca permaneça. Se você usa o WooCommerce, esta é a parte da lista de verificação que deve ser feita perfeitamente: vitrine rápida a partir do cache, carrinho dinâmico por usuário, nada de pessoal armazenado em cache.

Perguntas frequentes

Eu ainda preciso de um plugin de cache como o WP Rocket?

Não. O cache de página inteira é gerenciado no servidor web pelo LSCache do LiteSpeed, nosso próprio plugin de cache conecta o WordPress a ele e gerencia a limpeza inteligente, e um cache de objetos Redis por site atua nos bastidores. Adicionar um segundo plugin de cache de página inteira sobre isso geralmente entra em conflito com o cache em nível de servidor em vez de ajudar, portanto, ele não é necessário nem recomendado.

Quais plugins a plataforma torna desnecessários?

Plugins de cache, plugins de object-cache separados e plugins de backup são todos redundantes aqui, porque essas tarefas são executadas abaixo do WordPress — cache em nível de servidor, um object-cache gerenciado por site e backups da plataforma. Removê-los reduz conflitos e a superfície de ataque. O que vale a pena continuar executando são os plugins de que seu site realmente precisa para funcionar, além dos nossos dois plugins gratuitos de cache e de footprint, que vêm pré-instalados.

O cache vai quebrar meu carrinho do WooCommerce ou minhas páginas de login?

Não. O carrinho, o checkout, a minha conta e quaisquer páginas de nonce ou sessão são excluídos do cache por padrão, e os Edge Side Includes mantêm o fragmento do carrinho e os totais atualizados em páginas que, de outra forma, estariam em cache. Os compradores sempre veem seu próprio carrinho e um checkout funcional enquanto a loja ainda carrega a partir do cache, e a limpeza automática inteligente limpa as páginas afetadas quando um produto, preço ou pedido é alterado.

Como você mantém o WordPress seguro sem que eu precise gerenciá-lo?

Nós corrigimos a pilha sob o WordPress, tornamos as atualizações do núcleo e de plugins seguras de aplicar com ambientes de teste e restauração em um clique, executamos varredura de malware e proteção contra DDoS ativadas por padrão, isolamos cada site para que uma invasão não possa se espalhar, e emitimos e renovamos certificados TLS automaticamente. Isso elimina a infraestrutura como o elo fraco; a higiene básica, como credenciais fortes e a remoção de plugins não utilizados, ainda continua sendo responsabilidade sua.

Experimente grátis por 14 dias

Crie seus primeiros sites gratuitamente por 14 dias — sem cartão. Vai mover um site ou rede existente? Sua primeira migração é por nossa conta.

Comece grátis