Como Migrar um Site WordPress sem Downtime: Guia Técnico Completo

Migrar um site WordPress sem downtime é completamente possível — mas requer planeamento. A maioria das migrações que correm mal não falha por problemas técnicos complexos, mas por sequência errada de passos: mudar o DNS antes de verificar que o novo servidor funciona, ou não ter em conta o TTL do DNS. Este guia apresenta o processo correcto.

Pré-requisitos: o que ter antes de começar

Antes de mover qualquer ficheiro, confirmar:

  • Acesso ao painel DNS do domínio (Cloudflare, registar, ou painel do hosting actual)
  • Credenciais do servidor de destino (FTP/SFTP, base de dados, cPanel ou painel equivalente)
  • Backup completo e recente do site actual (ficheiros + base de dados)
  • PHP e extensões necessárias disponíveis no novo servidor (verificar requisitos do tema e plugins)

Passo 1: Reduzir o TTL do DNS antes da migração

O TTL (Time To Live) dos registos DNS determina quanto tempo os servidores de todo o mundo guardam em cache o endereço IP do domínio. Se o TTL for 86400 (24 horas) e o mudar, o DNS pode demorar 24 horas a propagar — durante as quais alguns visitantes chegam ao servidor antigo e outros ao novo.

Solução: 24 a 48 horas antes da migração, reduzir o TTL para 300 segundos (5 minutos). Após a migração concluída com sucesso, pode voltar a aumentar para 3600 ou 86400.

Passo 2: Copiar o site para o novo servidor (sem alterar DNS)

Copiar todos os ficheiros via SFTP para o novo servidor e importar a base de dados. Neste ponto, o domínio ainda aponta para o servidor antigo — o site original está intacto e os visitantes não são afectados.

Para testar o novo servidor antes de mudar o DNS, editar o ficheiro hosts localmente para apontar o domínio para o novo IP. Isto permite verificar o site no novo servidor através do browser sem afectar outros utilizadores.

Passo 3: Actualizar os URLs na base de dados

Se o hostname ou protocolo mudar (ex: de HTTP para HTTPS, ou de staging.dominio.pt para dominio.pt), os URLs na base de dados precisam de ser actualizados. Ferramenta recomendada: WP-CLI com o comando search-replace, que faz a substituição correctamente também em dados serializados:

wp search-replace 'http://dominio-antigo.pt' 'https://dominio.pt' --all-tables

Alternativa: plugin Better Search Replace com a opção "Run as dry run" primeiro para pré-visualizar as alterações.

Passo 4: Verificar o site no novo servidor antes de mudar DNS

Com o ficheiro hosts local a apontar para o novo IP, verificar exaustivamente:

  • Homepage carrega correctamente
  • Painel admin acessível e funcional
  • Imagens e ficheiros de media visíveis
  • Formulários funcionais (teste de envio real)
  • SSL configurado e válido
  • Emails transaccionais a funcionar (SMTP configurado)
  • WooCommerce: processo de compra de teste (se aplicável)

Só avançar para o próximo passo depois de tudo verificado.

Passo 5: Mudar o DNS e gerir a janela de propagação

Com o TTL reduzido (Passo 1), a propagação DNS demora 5 a 15 minutos em vez de horas. Mudar o registo A do domínio para o novo IP. Durante a janela de propagação, alguns visitantes ainda chegam ao servidor antigo — por isso ambos os servidores devem estar operacionais neste período.

Ideal: fazer a mudança de DNS numa altura de baixo tráfego (madrugada ou fim de semana para sites B2B).

Passo 6: Manter o servidor antigo activo por 24 a 48 horas

Após a mudança de DNS, não desligar o servidor antigo imediatamente. Durante a propagação, visitantes com cache DNS antiga ainda chegam ao servidor antigo. Manter activo durante 24 a 48 horas garante que nenhum pedido é perdido.

Se o site tiver base de dados activa (WooCommerce, formulários), colocar o servidor antigo em modo de leitura ou redireccionamento para o novo servidor durante este período.

Passo 7: Checklist pós-migração

  • Google Search Console: verificar propriedade no novo domínio/server se aplicável
  • Google Analytics: confirmar que os dados continuam a ser recolhidos
  • Limpar cache de CDN (Cloudflare "Purge Everything" se aplicável)
  • Verificar redirects (301) se os URLs mudaram
  • Verificar sitemap.xml acessível e actualizado
  • Restaurar TTL do DNS para valor normal (3600 ou 86400)
  • Verificar backups automáticos configurados no novo servidor

Erros mais comuns em migrações WordPress

  • Não actualizar URLs da base de dados (links internos quebrados, imagens não carregam)
  • Esquecer de configurar SMTP no novo servidor (emails transaccionais param)
  • Não copiar o wp-config.php com as credenciais correctas da nova base de dados
  • Diferença de versão PHP entre servidores que quebra plugins
  • Permissões de ficheiros incorrectas no novo servidor (erros 500 ou uploads que falham)

Migrações WordPress sem stress

A Vuvo realiza migrações WordPress completas para agências e os seus clientes, com zero downtime e verificação exaustiva pós-migração incluída.

Falar sobre migração