2016-04-12 7 views
0

I nginx mehrere NodeJS appsnginx NodeJS + PM2 connot Rückkehr GET/PM2

Auf meinem Server Ich habe 2 apps myapp und PM2-web

die nginx Konfiguration wie folgt aussehen

http { 
    # .... logs, gzip ... etc 
    server { 
     location/{ 
      proxy_pass http://localhost:5000; 
      proxy_http_version 1.1; 
      proxy_set_header Upgrade $http_upgrade; 
      proxy_set_header Connection 'upgrade'; 
      proxy_set_header Host $host; 
      proxy_cache_bypass $http_upgrade; 
     } 

     location /pm2 { 
      proxy_pass http://localhost:9000; 
      proxy_http_version 1.1; 
      proxy_set_header Upgrade $http_upgrade; 
      proxy_set_header Connection 'upgrade'; 
      proxy_set_header Host $host; 
      proxy_cache_bypass $http_upgrade; 
     } 

    } 
dienen installiert

meine app läuft gut, aber wenn ich versuche, /pm2

ich folgende Fehlermeldung

012 erhalten zugreifen
Cannot GET /pm2 

wenn PM2-Bahn läuft nicht ich 502 Bad Gateway

bekommen, aber ich kann auf Ihre Knoten Anwendung noch PM2 Zugriff von http://IP:9000

Antwort

0

Der /pm2 Teil der URL übergeben wird durch, wo es nicht der Fall ist Finde irgendwelche Pfade.

dh Ihre PM2 App läuft unter 9000, aber Sie versuchen, auf http://localhost:9000/pm2 zugreifen, die nicht existiert.

Fügen Sie einen Schrägstrich in der URL-Proxy-Pass /pm2, um sicherzustellen, ist nicht enthalten sind:

location /pm2 { 
    proxy_pass http://localhost:9000/; 
    proxy_http_version 1.1; 
    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection 'upgrade'; 
    proxy_set_header Host $host; 
    proxy_cache_bypass $http_upgrade; 
} 
+0

mit 'umschreiben ^/PM2 $ $ 1 Letzte;' ich 'Fehler 500' und mit (*). 'write ^/pm2 (. *)/$ 1 Pause;' Ich bekomme 'pm2-Web-Version {{Version}}' – Eltorrooo

+0

Entschuldigung, siehe oben die Update-Lösung. – duncanhall

+0

es gibt 'pm2-web version {{version}}' zurück, ich denke es liegt daran, dass der Server die statische Datei 'css | js' nicht finden kann – Eltorrooo