Como Migrar WordPress para CPanel em VPS Linux

10 min de leitura Migração de Servidor
Como Migrar WordPress para CPanel em VPS Linux

Introdução à Migração de WordPress para CPanel em VPS Linux

Migrar um site WordPress para um ambiente controlado por CPanel em um VPS Linux é uma decisão estratégica comum para profissionais de TI e desenvolvedores que buscam escalabilidade, controle total sobre a infraestrutura e automação de backups. Ao contrário das hospedagens compartilhadas tradicionais, onde o acesso ao sistema operacional é restrito, um VPS (Virtual Private Server) oferece a flexibilidade de configurar o servidor exatamente conforme as necessidades do projeto, enquanto o CPanel facilita a gestão diária através de uma interface gráfica intuitiva.

Este tutorial técnico guia você pelo processo completo de migração. O foco está na integridade dos dados, minimização de downtime e configuração correta das permissões no ambiente Linux. Vamos cobrir desde a preparação do servidor VPS até a validação final da propagação DNS. Siga as etapas rigorosamente para garantir uma transição suave sem perda de conteúdo ou configurações.

Etapas Prévias: Requisitos e Preparação do Ambiente

Antes de iniciar o processo de migração, é fundamental ter todos os componentes preparados. A falha em verificar pré-requisitos é a causa mais comum de erros durante a instalação do WordPress no novo servidor.

1. Verificação do Sistema Operacional e Acesso Root

Você deve ter acesso SSH root ao seu VPS Linux. A maioria das distribuições modernas, como Ubuntu, Debian ou CentOS/AlmaLinux, é compatível com o CPanel. Certifique-se de que o servidor está atualizado antes da instalação.

apt update && apt upgrade -y
# Para sistemas baseados em RedHat (CentOS, AlmaLinux):
yum update -y

2. Configuração do Hostname e Firewall

O CPanel exige que o hostname do servidor seja configurado corretamente antes da instalação. Além disso, você precisa liberar as portas necessárias para o funcionamento do CPanel e dos serviços web (HTTP/HTTPS).

# Definir hostname (exemplo.com.br)
hostnamectl set-hostname exemplo.com.br
systemctl restart systemd-hostnamed

Libere as portas essenciais no firewall:

  • Porta 2083 e 2087 (CPanel WHM)
  • Porta 80 (HTTP)
  • Porta 443 (HTTPS)
  • Porta 22 (SSH)

Fase 1: Instalação e Configuração do CPanel no VPS

O primeiro passo técnico é instalar o painel de controle. O processo de instalação do CPanel é automatizado, mas requer tempo para compilação e configuração inicial.

Passo 1: Download do Script de Instalação

Acesse o servidor via SSH como root e baixe o script de instalação atualizado:

wget -N https://cpanel.net/setup.sh
chmod +x setup.sh

Passo 2: Execução da Instalação

Inicie a instalação. Este processo pode levar de 30 minutos a algumas horas, dependendo da configuração de hardware do seu VPS.

./setup.sh

Aguarde até que o script finalize com sucesso. Ao concluir, você receberá um endereço HTTPS (geralmente https://seu-ip:2087) e as credenciais de root para acessar o WHM (Web Host Manager).

Passo 3: Configuração Inicial no WHM

Faça login no WHM com o usuário root. Durante a configuração inicial, você será solicitado a aceitar os termos de serviço e configurar:

  • Nameservers (NS): Configure os nameservers do domínio ou use os fornecidos pelo provedor.
  • DNS Zone: Crie uma zona DNS para o domínio que receberá o WordPress.
  • SSL/TLS: Instale um certificado SSL básico ou deixe para gerar automaticamente depois.

Fase 2: Backup Completo do Site WordPress Original

A migração segura depende de um backup íntegro. Não tente copiar arquivos manualmente sem garantir a consistência do banco de dados. Vamos utilizar o método híbrido: exportação do banco de dados e compactação dos arquivos do site.

Passo 1: Exportar o Banco de Dados

Acesse o painel de controle antigo (cPanel, Plesk ou gerenciador nativo) e utilize o phpMyAdmin para exportar o banco de dados do WordPress. Certifique-se de selecionar a opção "Custom" e marque a caixa "Add DROP TABLE" para facilitar a importação futura, evitando erros de duplicidade.

# Se tiver acesso SSH ao servidor antigo, use mysqldump diretamente:
mysqldump -u usuario_db -p nome_do_banco > backup_wp.sql

Passo 2: Compactar Arquivos do Site

No diretório raiz do seu site no servidor antigo (geralmente public_html ou www), compacte todo o conteúdo, exceto pastas temporárias desnecessárias que podem ocupar espaço.

# Exemplo de comando para criar um backup otimizado:
tar -czvf /home/backup_site.tar.gz public_html --exclude='public_html/wp-content/cache' --exclude='public_html/wp-content/uploads/temp'

Transfira os arquivos backup_wp.sql e backup_site.tar.gz para sua máquina local ou envie diretamente para o novo servidor via SCP:

scp backup_site.tar.gz root@novo_ip_do_vps:/tmp/
scp backup_wp.sql root@novo_ip_do_vps:/tmp/

Fase 3: Configuração do Ambiente no Novo VPS com CPanel

Agora que temos o servidor novo pronto e os arquivos de backup seguros, precisamos preparar o ambiente para receber o WordPress.

Passo 1: Criar a Conta de Hosting

No WHM, vá em Create a New Account. Preencha os dados:

  • Domain: O domínio principal (ex: exemplo.com.br).
  • Username/Password: Defina credenciais fortes para o usuário do CPanel.
  • Plan: Selecione um pacote de recursos (RAM, Disco) adequado ao tráfego esperado.

Clique em Create. O CPanel criará automaticamente as pastas public_html, configura o DNS e provisiona os recursos.

Passo 2: Configurar PHP e Extensões

No novo CPanel do usuário, acesse a seção Select PHP Version. Verifique se as extensões necessárias para o seu tema e plugins estão habilitadas (ex: mysqli, curl, gd, mbstring). A versão recomendada atualmente é PHP 8.1 ou superior.

Fase 4: Upload e Extração dos Arquivos

Com a conta criada, vamos mover os arquivos do site para o novo ambiente.

Passo 1: Acesso ao Gerenciador de Arquivos

No CPanel, abra o File Manager. Navegue até o diretório public_html.

Passo 2: Upload e Extração

Faça upload do arquivo backup_site.tar.gz para dentro de public_html. Após o upload, clique com o botão direito no arquivo e selecione Extract.

Atenção às Permissões: Após a extração, é crucial corrigir as permissões de arquivos e diretórios para garantir que o WordPress funcione corretamente e seja seguro.

# Acesse o SSH como root ou usuário com sudo
cd /home/usuario_cpanel/public_html

# Definir permissões de diretórios para 755
find . -type d -exec chmod 755 {} \;

# Definir permissões de arquivos para 644
find . -type f -exec chmod 644 {} \;

# Garantir que o proprietário seja o usuário correto do CPanel (ex: usuario_cpanel)
chown -R usuario_cpanel:usuario_cpanel public_html

Fase 5: Importação do Banco de Dados e Configuração do wp-config.php

O banco de dados contém todo o conteúdo, configurações e usuários do site. Esta é a etapa mais crítica da migração.

Passo 1: Criar Banco de Dados no CPanel

No CPanel, vá em MySQL Databases:

  1. Crie um novo banco de dados (ex: usuario_wp_db).
  2. Crie um novo usuário de banco de dados e defina uma senha forte.
  3. Atribua o usuário ao banco de dados com todas as permissões (All Privileges).

Passo 2: Importar o Dump SQL

No mesmo menu, vá em phpMyAdmin. Selecione o novo banco de dados criado e clique na aba Import. Escolha o arquivo backup_wp.sql e execute.

Passo 3: Atualizar o wp-config.php

O WordPress precisa saber as novas credenciais do banco de dados. Abra o arquivo public_html/wp-config.php no gerenciador de arquivos ou via SSH e atualize as seguintes linhas:

define('DB_NAME', 'usuario_wp_db');
define('DB_USER', 'usuario_cpanel');
define('DB_PASSWORD', 'SuaSenhaForteAqui');
define('DB_HOST', 'localhost');

Dica Pro: Se o site estiver em um subdiretório ou se o domínio mudou, você pode precisar atualizar as URLs no banco de dados. Isso pode ser feito via phpMyAdmin com queries SQL ou usando plugins de busca e substitução.

# Exemplo de query para trocar domínio antigo pelo novo (use com cautela):
UPDATE wp_options SET option_value = replace(option_value, 'http://www.dominio_antigo.com', 'https://www.dominio_novo.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://www.dominio_antigo.com','https://www.dominio_novo.com');
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.dominio_antigo.com', 'https://www.dominio_novo.com');

Fase 6: Validação e Propagação DNS

Agora que os dados estão no novo servidor, precisamos direcionar o tráfego para lá.

Passo 1: Teste Local (Hosts File)

Antes de mudar o DNS globalmente, teste se o site está acessível através do IP do VPS. Adicione uma entrada no seu arquivo /etc/hosts (ou equivalente no Windows) para mapear o domínio ao novo IP temporariamente.

# /etc/hosts
192.0.2.1 exemplo.com.br www.exemplo.com.br

Acesse o site pelo navegador. Se tudo funcionar, remova a entrada do hosts file.

Passo 2: Atualizar os Nameservers (DNS Propagation)

No painel de registro do seu domínio (onde você comprou o nome), altere os Nameservers para os fornecidos pelo seu provedor de VPS/CPanel. Geralmente são algo como ns1.exemplo.com.br e ns2.exemplo.com.br.

A propagação DNS pode levar de algumas horas até 48 horas para se completar globalmente. Durante esse período, parte do tráfego poderá ir para o servidor antigo e parte para o novo. Para minimizar isso:

  • Reduza o TTL (Time To Live) dos registros DNS antigos para um valor baixo (ex: 300 segundos) dias antes da migração.
  • Mantenha o site antigo ativo por alguns dias após a mudança.

Considerações Finais e Boas Práticas

A migração de WordPress para CPanel em VPS Linux oferece um equilíbrio poderoso entre performance e facilidade de gestão. Ao seguir este tutorial, você garantiu a integridade dos dados através de backups consistentes e configurou o ambiente Linux com as permissões corretas.

Dicas de Segurança Pós-Migração:

  • Habilite o ModSecurity no CPanel para proteção contra ataques web comuns (WAF).
  • Configure backups automáticos diários via WHM (Backup Configuration) para garantir recuperação rápida em caso de falhas.
  • Instale um certificado SSL Let's Encrypt para cada domínio criado no CPanel, forçando o uso de HTTPS.

Com a migração concluída e a propagação DNS finalizada, seu site WordPress estará rodando em uma infraestrutura robusta, pronta para escalar conforme o crescimento do seu negócio. Monitorize os logs de erro (/usr/local/apache/logs/error_log ou via CPanel) nos primeiros dias para identificar qualquer inconsistência residual.

Compartilhar: Link copiado!
Esse tutorial foi útil?

Comentários (0)

Seja o primeiro a comentar.

Deixe seu comentário

Seu comentário será analisado antes de ser publicado.

0/2000