Como mover um site WordPress para um novo VPS
Mover um site WordPress é mover três coisas: os arquivos (principalmente a pasta wp-content), o banco de dados e o registro DNS do seu domínio. O caminho mais fácil é um plugin de migração. À mão, você copia os arquivos, exporta o banco de dados, carrega-o no novo servidor e corrige os endereços se eles mudaram.
A ordem é a mesma qualquer que seja o método: faça o backup, teste no novo servidor e deixe o DNS por último. Não desligue o servidor antigo até o novo site estar funcionando.
Antes de começar
- Faça um backup completo. Guarde uma cópia dos arquivos e do banco de dados no seu próprio computador. O guia oficial de migração do WordPress também manda fazer backup antes de qualquer alteração no banco de dados.
- Descubra o tamanho. Quantos MB têm a pasta
wp-contente o banco de dados? Isso decide qual método serve para você. - Compare as versões. A versão do PHP do novo servidor funciona com os seus plugins antigos? Atualize um plugin incompatível antes de movê-lo.
- Reduza o TTL. Um ou dois dias antes da troca, defina o TTL dos registros DNS do seu domínio para 300 segundos. Assim o endereço antigo não fica por muito tempo nos caches.
- Veja onde fica o seu e-mail. Mudar o registro A não mexe nos seus registros MX. Se o seu e-mail roda no servidor do site, ele precisa ser movido separadamente.
Método 1: mover com um plugin
Os plugins de migração reúnem os arquivos e o banco de dados em um único pacote e o descompactam no novo site, e a maioria também corrige os endereços. Há três abordagens comuns:
- Enviar um pacote pelo navegador. Você gera o pacote no site antigo, instala o mesmo plugin no novo WordPress e envia o pacote (o All-in-One WP Migration funciona assim, por exemplo). Essa abordagem esbarra no limite de tamanho de upload do servidor.
- Colocar o pacote com SFTP. Plugins como o Duplicator pedem que você copie o arquivo compactado e um arquivo
installer.phppara uma pasta vazia no novo servidor e depois abra oinstaller.phpno navegador. Você precisa criar antes o banco de dados e o usuário dele. Ao terminar, apague oinstaller.phpe o arquivo compactado, porque qualquer pessoa que souber o endereço poderia executar o instalador de novo. - Restaurar a partir de armazenamento remoto. Com um plugin de backup como o UpdraftPlus, você conecta o mesmo armazenamento na nuvem no novo site e encontra o backup com o link "Rescan remote storage". Você nunca envia o arquivo grande pelo navegador.
O limite de 64 MB no servidor WordPress pronto
No servidor WordPress pronto da Seturack, você pode enviar no máximo 64 MB de uma vez. Plugins que recebem um pacote pelo navegador esbarram nesse limite. Se o seu pacote for maior, use a restauração por armazenamento remoto ou mova o site à mão. Como o app pronto roda no Docker, os arquivos não ficam onde ficariam em uma instalação clássica. Para um site grande que você vai mover à mão, um servidor Ubuntu limpo com Apache ou Nginx instalado é mais previsível.
Método 2: mover à mão
Estes passos valem para uma instalação clássica em que os arquivos ficam em /var/www/html. Se você executa o WP-CLI como root, acrescente --allow-root aos comandos. No servidor antigo, dentro da pasta do WordPress:
- Exporte o banco de dados para fora da pasta web, porque um dump deixado nela pode ser baixado por qualquer pessoa que souber o endereço:
wp db export ~/site.sql. Sem o WP-CLI, usemysqldump -u USER -p DATABASE > ~/site.sql. - Compacte os arquivos com
tar -czf ~/files.tar.gz . - Copie os dois para o novo servidor com
scp ~/site.sql ~/files.tar.gz user@NEW_IP:~/
No novo servidor:
- Crie um banco de dados vazio e um usuário para ele.
- Descompacte os arquivos na pasta web com
tar -xzf ~/files.tar.gz -C /var/www/html - Atualize o nome do banco de dados, o usuário e a senha no
wp-config.phpcom os novos valores. Passe a propriedade ao usuário do servidor web (www-datano Debian e no Ubuntu). - Importe o banco de dados com
wp db import ~/site.sql. O comando lê as configurações dowp-config.phpe não cria o banco de dados para você.
Se o domínio continuar o mesmo, não é preciso corrigir endereços. Se mudar, substitua o endereço antigo pelo novo. Teste primeiro com --dry-run e não mexa na coluna guid:
wp search-replace 'https://old.com' 'https://new.com' --skip-columns=guid --dry-run
Se a saída parecer certa, execute o comando de novo sem --dry-run. Não faça uma simples busca e substituição no banco de dados, porque dados serializados podem quebrar. O WP-CLI trata esses dados corretamente.
Teste no novo servidor antes de trocar o DNS
Adicione o endereço IP do novo servidor e o seu domínio ao arquivo hosts do seu computador. O arquivo fica em C:\Windows\System32\drivers\etc\hosts no Windows e em /etc/hosts no macOS e no Linux:
203.0.113.10 example.com www.example.com
A partir daí, só o seu navegador abre o novo servidor, enquanto todo mundo continua vendo o antigo. Teste o login, as páginas, as imagens e os formulários e depois apague a linha. O certificado HTTPS geralmente é emitido quando o DNS passa a apontar para o novo servidor.
A troca do DNS
- Se o site recebe gravações o tempo todo (uma loja, assinaturas, comentários), coloque o site antigo em modo de manutenção, tire o banco de dados uma última vez e transfira-o. Caso contrário, os pedidos feitos durante a troca se perdem.
- No seu painel de DNS, aponte o registro A para o novo endereço IP e faça o mesmo para o www. O artigo sobre conectar o seu próprio domínio mostra os passos.
- Com um TTL baixo, a mudança se espalha rápido. Algumas redes podem guardar o registro antigo por mais tempo.
- Confirme que o HTTPS funciona no novo servidor.
- Quando tudo estiver bem, devolva o TTL ao valor anterior. Mantenha o servidor antigo por alguns dias e depois desligue-o.
Lista de verificação depois da mudança
- Abra Settings > Permalinks e clique em Salvar para atualizar as regras de reescrita.
- Abra a página inicial, um post, uma imagem e o formulário de contato.
- Procure avisos de conteúdo misto (mixed content). Corrigir os endereços resolve a maioria deles.
- Teste o envio de e-mail e confira as configurações do seu plugin de SMTP.
- Limpe o cache do seu plugin de cache.
- Apague
~/site.sqle~/files.tar.gznos dois servidores. Ambos contêm dados sensíveis. - Em Settings > Reading, confirme que a caixa que desencoraja os mecanismos de busca não está marcada.
Se você mover com um plugin, começar de um WordPress vazio facilita. Um servidor com WordPress pré-instalado fica pronto em cerca de 3,5 a 4 minutos. Dê uma olhada na página do servidor WordPress.
Comentários0
Ainda não há comentários
Seja a primeira pessoa a compartilhar sua opinião.
Entre ou crie uma conta para deixar um comentário.