Hospedando um Projeto Lovable na ApogeuHost ((Node.js + GitHub + cPanel)) imprimir

  • Deploy Lovable, node.js, hospedar site lovable, lovable no cpanel
  • 0

Guia passo a passo para publicar um projeto Lovable conectado ao GitHub em uma conta cPanel da ApogeuHost.

Recomendação importantePublique a aplicação na raiz de um domínio ou subdomínio, como https://meusite.com.br/ ou https://app.meusite.com.br/. Não recomendamos instalar o projeto em uma subpasta, como meusite.com.br/app, pois isso pode exigir alterações adicionais no Vite, no TanStack Router, no Nitro e nos caminhos das imagens.
 

1. Requisitos

  • Conta de hospedagem ApogeuHost com suporte a Node.js.
  • Projeto criado no Lovable e sincronizado com o GitHub.
  • Repositório público ou privado com autenticação configurada.
  • Domínio ou subdomínio apontado para a conta de hospedagem.
Este tutorial é indicado para projetos Lovable com TanStack Start e NitroNo arquivo package.json, normalmente aparecem dependências como @tanstack/react-start, vite e nitro.
 

2. Clonar o projeto do GitHub

  1. No cPanel, acesse Git Version Control.
  2. Clique em Criar.
  3. Ative a opção para clonar um repositório existente.
  4. Informe a URL do repositório:
    https://github.com/usuario/meusite.git
  5. No caminho do repositório, use:
    repositories/meusite
  6. Informe um nome de identificação, como Meu Site, e conclua a criação.
Não clone diretamente no public_htmlO repositório pode conter código-fonte, arquivos de configuração e dados que não devem ficar expostos publicamente.
 

3. Criar a aplicação Node.js

No cPanel, acesse Setup Node.js App e clique em Criar aplicativo.

Campo Valor recomendado
Versão Node.js 22.x
Modo da aplicação Development
Raiz da aplicação repositories/meusite
URL da aplicação Selecione meusite.com.br ou o subdomínio escolhido
Caminho após o domínio Deixe vazio
Arquivo de inicialização app.cjs
Log do Passenger /home/USUARIO/logs/meusite-passenger.log
Variável de ambiente NODE_ENV=development

Clique em Criar.

 

4. Ativar o ambiente virtual

Após criar a aplicação, o cPanel mostrará um comando parecido com este:

source /home/USUARIO/nodevenv/repositories/meusite/22/bin/activate && cd /home/USUARIO/repositories/meusite
  1. Abra o Terminal no cPanel.
  2. Copie e execute exatamente o comando mostrado na tela da aplicação.
  3. Confirme a versão do Node.js:
node -v

O resultado esperado deve começar com:

v22

5. Instalar todas as dependências

Execute:

npm install --include=dev
Por que usar --include=dev?O Lovable pode colocar ferramentas essenciais ao build em devDependencies, como @lovable.dev/vite-tanstack-config, vite, typescript e nitro.
Não execute automaticamente npm audit fix --forceEsse comando pode atualizar dependências para versões incompatíveis e quebrar o projeto.
 

6. Alterar a aplicação para produção

Antes de gerar o build, volte ao Setup Node.js App e faça estas alterações:

  • Modo da aplicação: Production
  • Variável: NODE_ENV=production

Clique em Salvar.

Retorne ao Terminal, ative novamente o ambiente virtual e confirme:

echo $NODE_ENV

O resultado deve ser:

production
Etapa críticaNão gere o build com NODE_ENV=development. Isso pode provocar o erro jsxDEV is not a function durante a renderização SSR.
 

7. Gerar o build para Node.js

Limpe builds e caches anteriores:

rm -rf .output
rm -rf node_modules/.vite
rm -rf node_modules/.nitro

Depois, gere o build:

NODE_ENV=production NITRO_PRESET=node_server npm run build

Ao final, confirme se o arquivo principal foi criado:

ls -lah .output/server/index.mjs

O caminho esperado é:

.output/server/index.mjs

8. Configurar o arquivo app.cjs

O cPanel pode criar automaticamente um arquivo app.cjs de teste com a mensagem It works!. Esse conteúdo deve ser substituído completamente.

No Gerenciador de Arquivos, abra:

/home/USUARIO/repositories/meusite/app.cjs

Apague todo o conteúdo e deixe somente:

import("./.output/server/index.mjs").catch((error) => {
    console.error("Falha ao iniciar a aplicação:", error);
    process.exit(1);
});
Não misture com o servidor de teste do cPanelRemova qualquer código com http.createServer() ou server.listen().

Volte ao Setup Node.js App, confira se o arquivo inicial está como app.cjs e clique em Reiniciar.

Agora acesse:

https://meusite.com.br/

9. Corrigir imagens internas do Lovable

Algumas imagens podem continuar apontando para a infraestrutura interna do Lovable. Esses caminhos geralmente começam com:

/__l5e/assets-v1/

Exemplo:

<img src="/__l5e/assets-v1/UUID/logo.webp" alt="Logo">

Essas imagens não são copiadas automaticamente para a hospedagem externa.

Localizar as imagens

grep -RIn "/__l5e/assets-v1/" src public --exclude-dir=node_modules

Salvar as imagens localmente

Crie a pasta:

public/images

Baixe as imagens utilizadas pelo projeto e coloque-as nessa pasta.

Depois, substitua:

/__l5e/assets-v1/UUID/logo.webp

por:

/images/logo.webp

Gerar o build novamente

rm -rf .output
rm -rf node_modules/.vite
rm -rf node_modules/.nitro
NODE_ENV=production NITRO_PRESET=node_server npm run build

Depois, reinicie a aplicação no Setup Node.js App.

 

10. Como atualizar o site

Sempre que o projeto for alterado no Lovable e sincronizado com o GitHub:

  1. No cPanel, acesse Git Version Control.
  2. Clique em Pull or Deploy e clique em Update from Remote.
  3. Abra o Terminal e ative o ambiente virtual:
    source /home/USUARIO/nodevenv/repositories/meusite/22/bin/activate && cd /home/USUARIO/repositories/meusite
  4. Atualize as dependências:
    npm install --include=dev
  5. Limpe o build anterior:
    rm -rf .output
    rm -rf node_modules/.vite
    rm -rf node_modules/.nitro
  6. Gere o novo build:
    NODE_ENV=production NITRO_PRESET=node_server npm run build
  7. Volte ao Setup Node.js App e clique em Reiniciar.
  8.  

11. Solução de problemas

Erro: Cannot find package '@lovable.dev/vite-tanstack-config'

Execute:

npm install --include=dev

Erro: jsxDEV is not a function

O build foi gerado em modo de desenvolvimento. Confirme:

echo $NODE_ENV

Deve retornar production. Depois refaça o build:

rm -rf .output
rm -rf node_modules/.vite
rm -rf node_modules/.nitro
NODE_ENV=production NITRO_PRESET=node_server npm run build

Erro 500 Internal Server Error

  • Confirme se .output/server/index.mjs existe.
  • Confirme se o arquivo inicial está definido como app.cjs.
  • Confirme se o conteúdo do app.cjs está correto.
  • Reinicie a aplicação.
  • Consulte o log do Passenger:
tail -n 100 /home/USUARIO/logs/meusite-passenger.log

As imagens não aparecem

Procure referências internas do Lovable:

grep -RIn "/__l5e/assets-v1/" src public --exclude-dir=node_modules

Migre os arquivos para public/images, altere os caminhos e gere o build novamente.

O site abre em uma subpasta, mas o layout ou as rotas quebram

Este tutorial considera a aplicação instalada na raiz de um domínio ou subdomínio. Instalações em subpastas podem exigir alterações no Vite, TanStack Router, Nitro, imagens e links internos.

 

12. Resumo dos principais comandos

Ativar o ambiente

source /home/USUARIO/nodevenv/repositories/meusite/22/bin/activate && cd /home/USUARIO/repositories/meusite

Instalar dependências

npm install --include=dev

Limpar build e cache

rm -rf .output
rm -rf node_modules/.vite
rm -rf node_modules/.nitro

Gerar build de produção

NODE_ENV=production NITRO_PRESET=node_server npm run build

Verificar o arquivo gerado

ls -lah .output/server/index.mjs
ConcluídoO projeto Lovable está hospedado na ApogeuHost com Node.js, Passenger, GitHub e cPanel.

Esta resposta foi útil?

« Retornar