AH01114: HTTP: Verbindung zum Backend konnte nicht hergestellt werden: localhost

AH01114: HTTP: Verbindung zum Backend konnte nicht hergestellt werden: localhost

Ich weiß, dass einige von Ihnen vielleicht denken, dass das hier ein wenig vom Thema abkommt, aber ich bin nicht sicher, ob es am Server ODER an meiner Konfigurationsdatei liegt, also …

Ich habe ein React.js-Projekt erstellt, aber es muss serverseitig gerendert werden. Also muss ich jetzt von CRA zu next.js migrieren. Das Problem: Ich muss meine Website auf einen Apache-Webserver hochladen. Soweit ich Google entnehmen konnte, muss ich node.js und pm2 (neueste Versionen) installieren und Apache für den Reverse-Proxy konfigurieren. Außerdem habe ich ein Ökosystem für pm2 erstellt (ich denke, das war notwendig). Im Moment sieht es so aus:


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

aber als ich „pm2 start npm -- start“ ausführte, erhielt ich vom Terminal die folgende Antwort:

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.

aber wenn ich versuche, die Liste der Prozesse anzuzeigen, gibt es keine, und wenn der Benutzer versucht, die Website aufzurufen, zeigt das Site-Protokoll, dass auf Port 3000 kein Dienst vorhanden ist

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

Und

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

also, ich bin nicht sicher, ob es am Server liegt oder ob meine Konfigurationsdatei dieses Chaos verursacht. Irgendwelche Ideen?

Antwort1

Stellen Sie zunächst sicher, dass die folgenden Befehle in Ihrem package.json vorhanden sind

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

Verwenden Sie den folgenden Befehl

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

Detaillierte Prozessinformationen können Sie ausdrucken mit

pm2 show nextjs-app

Konfigurieren Sie PM2 so, dass es beim Serverstart gestartet wird. Führen Sie den folgenden Befehl aus alsWurzel

pm2 startup

Speichern Sie die pm2-Prozessliste, um sie nach einem Serverneustart erneut zu starten

pm2 save

verwandte Informationen