Um alojamento partilhado é um bom sítio para começar: barato, com painel, com o e-mail incluído e com alguém que mantém o servidor. Deixa de o ser quando o site cresce e fica lento, quando precisa de instalar algo que o painel não permite, ou quando o "plano superior" que lhe oferecem custa mais do que uma máquina própria. Uma máquina Lightsail dá-lhe um servidor inteiro só para si por um preço fixo por mês.
Em troca, ninguém cuida dele por si: atualizações, cópias e segurança passam a ser responsabilidade sua. E há uma armadilha que apanha muita gente: o alojamento partilhado costuma ter o e-mail. Se mudar o DNS sem pensar nisso, o site funciona e o e-mail desaparece. A migração segue a ordem segura: máquina nova, cópia de tudo, teste sem tocar no domínio, mudança de DNS com retrocesso fácil, HTTPS, e-mail e, só no fim, cancelamento do alojamento antigo.
Antes de começar: o que significa cada coisa
- Alojamento partilhado
- Um servidor que o fornecedor reparte por muitos clientes. Você tem uma pasta, uma base de dados e um painel (cPanel, Plesk ou próprio).
- Modelo LAMP e modelo WordPress
- Máquinas Lightsail já preparadas: o LAMP traz servidor web, PHP e MySQL para qualquer site; o de WordPress traz além disso o WordPress instalado. São mantidos pela Bitnami.
- Base de dados
- Onde um site como o WordPress guarda textos, utilizadores e definições. Os ficheiros são as imagens, o tema e os plugins; a base de dados é o conteúdo. Há que copiar as duas coisas.
- DNS e TTL
- O DNS é a lista que diz para que servidor vai cada domínio. O TTL é durante quanto tempo os outros guardam essa resposta antes de voltar a perguntar: com TTL baixo, uma alteração nota-se em minutos.
- Registo A e registo MX
- O registo A diz onde está o site. O MX diz onde está o e-mail. São independentes: pode mover um sem tocar no outro.
- Ficheiro hosts
- Um ficheiro do seu computador que manda sobre o DNS. Serve para que só você veja o domínio na máquina nova enquanto o resto do mundo continua no alojamento antigo.
- SFTP
- Transferência de ficheiros por ligação cifrada. Como o FTP do alojamento, mas com uma chave em vez de palavra-passe.
Passo a passo
Decida se vale a pena e que modelo usar
Vale a pena se o site está lento e o alojamento fala de "uso excessivo de recursos"; se precisa de uma versão de PHP ou de uma ferramenta que o painel não tem; se tem vários sites e lhe cobram por cada um; ou se o plano superior custa mais do que uma máquina do Lightsail. Não vale a pena se o site é uma página de apresentação com cem visitas por mês: aí o partilhado cumpre.
Se o site é WordPress, use o modelo WordPress do Lightsail: a migração reduz-se a um plugin. Se é outra coisa (um site à medida em PHP, Joomla, PrestaShop, vários sites), use o modelo LAMP, que traz Apache, PHP e MySQL/MariaDB vazios. Plano: para um site que estava no limite no partilhado, o de 2 GB é o mínimo razoável; com loja ou vários sites, 4 GB. Pode sempre subir depois com um instantâneo.
Antes de tocar em nada, anote: onde está o DNS do domínio (costuma ser o mesmo alojamento), onde está o e-mail (quase de certeza, o mesmo alojamento), a versão de PHP que o site usa agora e o espaço que ocupam ficheiros e base de dados.
Crie a máquina e prepare-a
Na consola do Lightsail, Criar instância, região próxima (Paris ou Irlanda para Espanha), modelo WordPress ou LAMP, plano, nome (
web-empresa). Quando estiver em execução, separador Rede, Criar IP estático e atribua-o. Adicione a regra HTTPS (443) à firewall se não estiver. Anote o IP estático.Verifique a versão de PHP: clique em Ligar através de SSH e escreva
php -v. Se o seu site precisa de uma versão mais antiga, prepare-se para corrigir avisos; convém sabê-lo antes. E descarregue a chave da máquina para enviar ficheiros: menu Conta, Chaves SSH, Transferir a chave predefinida da sua região (um ficheiro.pem). Guarde-a num sítio seguro.Exporte ficheiros e base de dados do alojamento antigo
No painel do alojamento (cPanel ou Plesk), abra o Gestor de ficheiros, entre na pasta do site (
public_htmlouhttpdocs), selecione tudo, Comprimir num zip e Transferir. Se pesar vários GB, é melhor com um cliente FTP como o FileZilla, que retoma se a ligação cair.A base de dados: no painel, phpMyAdmin, selecione a base de dados do site (o nome está em
wp-config.phpou no ficheiro de configuração que for), separador Exportar, método rápido, formato SQL, Continuar. Descarregue o.sql. Se pesar centenas de MB, o phpMyAdmin pode cortar a meio: use a ferramenta de cópias do painel.Se é WordPress, há um atalho: instale no WordPress antigo um plugin de migração (Duplicator, All-in-One WP Migration), exporte um pacote e guarde-o. Faz ficheiros e base de dados ao mesmo tempo e corrige os endereços internos. Em sites grandes, a versão gratuita tem limites de tamanho.
Importe na máquina nova
Com plugin (WordPress): abra
http://IP-estática/wp-admin, entre com o utilizadorusere a palavra-passe que mostracat bitnami_application_passwordno terminal, instale o mesmo plugin de migração e importe o pacote. Ao terminar, o WordPress novo é uma cópia do antigo, utilizadores incluídos. Salte para o passo seguinte.À mão (LAMP ou WordPress sem plugin): no FileZilla, Ficheiro, Gestor de sites, novo site, protocolo SFTP, servidor o IP estático, utilizador
bitnami, modo de acesso "Ficheiro de chave" com o.pem. Envie o conteúdo do site para/opt/bitnami/apache/htdocs(LAMP) ou para/opt/bitnami/wordpress(modelo WordPress, substituindo o que lá está), e o.sqlpara a pasta pessoal. No terminal, crie a base de dados e importe:mysql -u root -p -e "CREATE DATABASE miweb; CREATE USER 'miweb'@'localhost' IDENTIFIED BY 'una-contraseña-larga'; GRANT ALL ON miweb.* TO 'miweb'@'localhost';" mysql -u root -p miweb < copia.sqlA palavra-passe de
rooté a do ficheirobitnami_application_password. Depois edite o ficheiro de configuração do site (wp-config.phpou o que for) com o nome da base de dados, utilizador e palavra-passe novos, elocalhostcomo servidor. Se o site guarda o seu endereço na base de dados (o WordPress fá-lo), deixe-o com o domínio real: vai testá-lo com o ficheiro hosts.Baixe o TTL e teste com o ficheiro hosts, sem tocar no DNS
Vá ao DNS do domínio (no alojamento antigo ou no seu registador) e procure o registo A do domínio e o de www. Não mude o IP ainda; mude só o TTL para
300segundos. Se estava em 3600 ou 86400, há que esperar esse tempo antes de a mudança de IP se notar depressa: faça-o hoje e mude o IP amanhã.Entretanto, teste o site novo como se já estivesse no domínio. Edite o ficheiro hosts do seu computador como administrador: no Windows,
C:\Windows\System32\drivers\etc\hosts(com o Bloco de notas executado como administrador); no Mac,sudo nano /etc/hostsno Terminal. Adicione no fim uma linha com o IP estático e o domínio:203.0.113.10 midominio.com www.midominio.comA partir desse momento, só o seu computador vê
midominio.comna máquina nova; o resto do mundo continua no alojamento antigo. Abra uma janela privada e percorra o site: página inicial, páginas interiores, formulários, o painel de administração, enviar uma imagem. O navegador avisará que não há cadeado: é esperado, resolve-se no passo 7. Se algo falhar, corrige-o com calma enquanto os visitantes continuam no antigo. Quando tudo estiver bem, apague a linha do ficheiro hosts.Mude o DNS e congele o site antigo
Mude os registos A do domínio e de www para o IP estático do Lightsail. Não toque nos registos MX nem nos TXT (SPF, DKIM): são o e-mail, passo 8. Com o TTL em 300, em dez ou quinze minutos a maioria dos visitantes já entra no novo.
Se o site guarda dados dos utilizadores (encomendas, comentários), há um período em que uns escrevem no antigo e outros no novo. Para o evitar, mesmo antes de mudar o DNS ponha o antigo em modo de manutenção e faça uma última exportação da base de dados para a importar no novo. Para um site de apresentação não é preciso.
Confirme a partir do telemóvel com dados (sem wi-fi) que entra no novo. No terminal da máquina,
sudo tail -f /opt/bitnami/apache/logs/access_logmostra as visitas a chegar em tempo real; se numa hora não chegar ninguém, o DNS não mudou onde pensava.Ponha HTTPS na máquina nova
Com o DNS já a apontar para o Lightsail (o Let's Encrypt verifica que o domínio chega à máquina), no terminal:
sudo /opt/bitnami/bncert-toolEscreva o domínio com e sem www, aceite os redirecionamentos para HTTPS e para uma só versão (a que usava antes), ponha o seu e-mail e confirme. Em dois minutos o site tem cadeado e renova-se sozinho. Se é WordPress, reveja em Definições, Geral que os dois endereços começam por
https://.Resolva o e-mail e feche o alojamento antigo
Se o e-mail do domínio (
info@midominio.com) estava no alojamento partilhado, tem duas opções, e há que decidir antes de cancelar o que quer que seja:- Deixar o e-mail onde está: mantenha o alojamento antigo no seu plano mais barato (muitos têm um "só e-mail") e não toque nos registos MX. O site vive no Lightsail e o e-mail no alojamento. É o mais simples se o e-mail funciona bem.
- Movê-lo para um serviço de e-mail (Google Workspace, Microsoft 365, o e-mail do seu registador): crie as contas, migre as caixas de correio com a ferramenta que oferecem e mude os registos MX e SPF para os que lhe derem. Avise as pessoas da empresa da mudança.
Não ponha o e-mail na máquina Lightsail: manter um servidor de e-mail que não acabe na pasta de spam é um trabalho à parte. A máquina deve, sim, poder enviar avisos (formulários, encomendas): configure no site um envio por SMTP com o serviço de e-mail que usar.
Depois, espere duas ou três semanas com o alojamento antigo ligado, para o caso de aparecer algo esquecido (um subdomínio, um ficheiro ligado, uma tarefa agendada). Descarregue uma cópia completa final do painel e guarde-a. Depois cancele o alojamento, ou deixe-o no plano mínimo se ficar com o e-mail. E se o domínio estava registado nesse alojamento, transfira-o para um registador ou para o Route 53 antes de cancelar, para que não vá com ele.
O que pode correr mal
O site novo mostra os textos mas sem estilos nem imagens
Os endereços internos apontam para o domínio e está a testá-lo por IP, ou o ficheiro hosts não foi guardado (há que abrir o editor como administrador). Teste sempre com o domínio e o ficheiro hosts. Se é WordPress migrado à mão, o comando wp search-replace muda os endereços na base de dados.
Mudei o DNS e uns veem o novo e outros o antigo
É o TTL antigo: quem consultou o domínio antes da mudança guarda a resposta durante esse tempo. Se não baixou o TTL para 300 com antecedência, pode durar até um dia. Não há forma de o acelerar. Entretanto, não apague nada do antigo.
O e-mail deixou de chegar
Veja os registos MX do domínio. Se ao mudar o DNS perdeu os MX, o e-mail não tem para onde ir: volte a pôr os do alojamento antigo (vê-os no painel dele) e o e-mail retido chegará nas horas seguintes. Se cancelou o alojamento sem mover o e-mail antes, as caixas de correio foram apagadas: é por isso que o guia deixa o cancelamento para o fim de tudo.
O site no Lightsail está mais lento do que no partilhado
Acontece quando o plano é o mais pequeno ou o site não tem cache. Veja o separador Métricas: se a CPU está acima da linha sustentável e a capacidade de rajada desce, o plano é curto. Ponha um plugin de cache e, se continuar no limite, suba de plano com um instantâneo. Há um guia nesta secção sobre como ler esses gráficos.
No Simplio
No Simplio cria a máquina Lightsail com o modelo de WordPress ou LAMP a partir do mesmo ecrã em que vê as suas outras máquinas, com o IP estático marcado ao criar e a firewall fechada ao seu IP com o botão de "adicionar o meu IP". Nos planos Pro e Empresa, o script de Let's Encrypt faz o passo 7 escrevendo só o domínio, e o terminal no navegador serve para importar a base de dados sem instalar nada no seu computador.
Depois da migração, o cartão da máquina mostra as métricas das últimas 24 horas com uma frase simples ("esta máquina está no limite"), para saber desde o primeiro dia se o plano é suficiente, e avisa-o por e-mail se a máquina parar. Os instantâneos e o custo aproximado por mês estão no mesmo ecrã.
O mesmo, na AWS e no Simplio
| Na consola da AWS | No Simplio | |
|---|---|---|
| Criar a máquina com IP fixo e firewall fechada | Criar instância, separador Rede para o IP, editar regra SSH com o seu IP: 3 ecrãs | Caixas ao criar a máquina e botão "adicionar o meu IP" |
| Pôr o cadeado HTTPS | Terminal SSH e responder ao bncert-tool | Script de Let's Encrypt do catálogo, escrevendo o domínio (Pro e Empresa) |
| Saber se o plano escolhido fica curto | Separador Métricas e interpretar a capacidade de rajada | Frase simples no cartão e aviso por e-mail se chegar ao limite |