
Eu sei que alguns de vocês podem pensar que está um pouco fora do assunto aqui, mas não tenho certeza se é culpa do servidor OU culpa do meu arquivo de configuração, então ...
Fiz o projeto React.js, mas ele precisa de renderização no lado do servidor, então agora tenho que migrar do CRA para o next.js. o problema: tenho que fazer upload do meu site no servidor web apache, pelo que descobri no google, preciso instalar node.js e pm2 (versões mais recentes), também configurar o apache para proxy reverso. Também criei um ecossistema para pm2 (acho que foi necessário). está assim no momento:
module.exports = {
apps : [{
name: "nextjs-app",
script: "npm",
args: "run build",
env: {
NODE_ENV: "production"
}
}]
};
mas quando executei pm2 start npm -- start , o terminal está me dando uma resposta assim:
pm2 start npm -- start
[PM2] Spawning PM2 daemon with pm2_home=/home/georgianar/.pm2
[PM2] PM2 Successfully daemonized
[PM2] Starting /usr/local/bin/npm in fork_mode (1 instance)
[PM2] Done.
mas quando tento ver a lista de processos, não há nenhum, e quando o usuário tenta entrar no site, o log do site mostra que não há serviço na porta 3000
AH01114: HTTP: failed to make connection to backend: localhost
e
(111)Connection refused: AH00957: http: attempt to connect to 127.0.0.1:3000 (localhost:3000) failed
então, não tenho certeza se é culpa do servidor ou do meu arquivo de configuração que está causando esse caos. alguma ideia?
Responder1
Primeiro, certifique-se de que os seguintes comandos existam em seu package.json
"scripts": {
"start": "next start -p 3000"
}
Use o seguinte comando
pm2 start yarn --name "nextjs-app" --interpreter bash -- start
Você pode imprimir informações detalhadas do processo usando
pm2 show nextjs-app
Configure o PM2 para iniciar na inicialização do servidor, execute o comando abaixo comoraiz
pm2 startup
Salve a lista de processos pm2 para reiniciá-los após a reinicialização do servidor
pm2 save