AH01114: HTTP: 백엔드 연결 실패: localhost

AH01114: HTTP: 백엔드 연결 실패: localhost

여러분 중 일부는 여기서 주제가 조금 벗어난다고 생각할 수도 있지만 서버 결함인지 내 구성 파일 결함인지 확실하지 않으므로...

React.js 프로젝트를 만들었는데 서버사이드 렌더링이 필요해서 이제 CRA에서 next.js로 마이그레이션해야 합니다. 문제: 내 웹사이트를 Apache 웹 서버에 업로드해야 합니다. Google에서 수집한 내용을 바탕으로 node.js 및 pm2(최신 버전)를 설치해야 하며 역방향 프록시용 Apache도 구성해야 합니다. pm2를 위한 생태계도 만들었습니다(필요한 것 같아요). 현재는 다음과 같습니다.


module.exports = {
  apps : [{
    name: "nextjs-app",
    script: "npm",
    args: "run build",
    env: {
      NODE_ENV: "production"
    }
  }]
};

하지만 pm2 start npm -- start 를 실행하면 터미널에서 다음과 같은 응답을 제공합니다.

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.

그런데 프로세스 목록을 보려고 하면 아무것도 없고, 사용자가 웹 사이트에 들어가려고 하면 사이트 로그에 포트 3000에 서비스가 없다고 표시됩니다.

AH01114: HTTP: failed to make connection to backend: localhost

그리고

(111)Connection refused: AH00957: http: attempt to connect to 127.0.0.1:3000 (localhost:3000) failed

그래서 서버의 결함이나 내 구성 파일이 이러한 혼란을 일으키는지 잘 모르겠습니다. 어떤 아이디어가 있나요?

답변1

먼저 package.json에 다음 명령이 있는지 확인하십시오.

"scripts": {
    "start": "next start -p 3000"
  }

다음 명령을 사용하십시오

pm2 start yarn --name "nextjs-app" --interpreter bash -- start

다음을 사용하여 세부 프로세스 정보를 인쇄할 수 있습니다.

pm2 show nextjs-app

서버 부팅 시 시작되도록 PM2를 구성하고 다음 명령을 실행합니다.뿌리

pm2 startup

서버 재부팅 후 다시 시작하려면 pm2 프로세스 목록을 저장하세요.

pm2 save

관련 정보