O que é
Esta é a estratégia de migração de um site WordPress para o GW Server sem downtime: o público
continua vendo o site antigo até tudo estar pronto no servidor novo. É a abordagem mais coringa:
funciona vindo de qualquer hospedagem.
A ideia central: você monta e testa o site no servidor novo antes de trocar o DNS, usando o
arquivo hosts do seu computador. Só quando estiver tudo certo você faz a virada.
Passo 1: Domínio na mesma conta Cloudflare
Regra de ouro: o domínio precisa estar na mesma conta Cloudflare integrada ao GW Server.
Isso libera emitir SSL e criar DNS sem apontar o domínio.
Adicione o domínio na conta Cloudflare (Adicionar → conectar um domínio). Ao importar, a
Cloudflare traz vários registros: cuidado com registros “sujos” ou duplicados da conta antiga.
Passo 2: Manter o site antigo no ar
Para o site não cair durante a troca de DNS, recrie os registros que apontam para o IP atual
(onde o site está hoje, não o servidor novo):
- Crie um registro A apontando o domínio para o IP do servidor antigo (proxy desligado).
- Crie o CNAME do
www(proxy desligado).
Assim, mesmo mudando o DNS para a Cloudflare, o site continua servido pelo servidor antigo.
Passo 3: Trocar os name servers
Na sua registradora de domínios (Namecheap, Registro.br, etc.), troque os name servers
pelos que a Cloudflare indicou. A propagação leva de poucos minutos até 48 horas: acompanhe com
DNS Checker e ferramentas de Whois.
Se você não corrigir os name servers, a Cloudflare remove o domínio da conta em 28 dias.
Passo 4: WordPress limpo no servidor novo
Instale um WordPress novo no GW Server, no mesmo domínio:
- Use, de preferência, a mesma versão do PHP do site de origem (veja no diagnóstico do site
antigo), para não quebrar plugins. - Emita o SSL via Cloudflare com a criação de registros DESMARCADA: o domínio ainda aponta
para o servidor antigo, e você não quer reescrever o DNS. Ver Certificado SSL.
Passo 5: Baixar do site antigo
Do servidor antigo, você precisa de duas coisas, o que dá para fazer por plugins, direto no
WordPress, de onde quer que ele esteja hospedado:
- Banco de dados: com um plugin como o UpdraftPlus, faça backup só do banco e baixe (o
formato.gzé ideal, fica pequeno). - Pasta
wp-content: com um plugin de File Manager, compacte e baixe awp-content(dentro
dela estãouploads, temas e plugins: todo o conteúdo do site).
Passo 6: Testar pelo arquivo hosts
Este é o segredo. Você faz o seu computador enxergar o site no servidor novo, sem mexer no DNS
público:
- Pegue o IP do servidor novo no painel.
- Edite o arquivo
hosts(no Windows:C:\Windows\System32\drivers\etc\hosts, como
administrador; no Linux/Mac o caminho é outro). - Adicione duas linhas:
IP_do_servidor_novo seudominio.comeIP_do_servidor_novo www.seudominio.com. - Salve.
Agora só o seu computador vê o site no servidor novo: o público continua no antigo. Abra o
domínio e você verá o WordPress limpo, já com HTTPS.
Passo 7: Subir banco e wp-content
No servidor novo, pelo gerenciador de arquivos:
- Em
htdocs, apague awp-contentdo site limpo. - Suba a
wp-contentdo site antigo e descompacte. - Importe o banco de dados antigo pela aba Banco (ele substitui o
banco do site limpo). - Limpe restos: pasta
cache,advanced-cache.phpe pastas de plugins de cache antigos.
Como só a wp-content e o banco vieram do site antigo, o resto do WordPress é o novo: a migração
já força a atualização para a versão mais recente.
Sites gigantes
Se o banco está corrompido ou os arquivos são grandes demais para o gerenciador:
- Upload por URL: hospede o arquivo em outro lugar e puxe pela URL.
- SFTP: sem limite de tamanho (ver Acesso SFTP).
- Terminal: restaure o banco por linha de comando (ver Terminal do site).
Passo 8: A virada de chave
Com tudo testado, faça a migração ficar pública: no DNS da Cloudflare, edite o registro A e
troque o IP do servidor antigo pelo IP do servidor novo. Em poucos minutos, todo o tráfego
passa a ver o site no GW Server. Migração concluída.
Depois da virada, faça os ajustes de O que fazer depois de migrar: limpeza
de plugins, correção de URLs no banco e configuração de cache.