Heim  >  Fragen und Antworten  >  Hauptteil

node.js – Nginx-NodeJS-Express-Reverse-Proxy-Problem

1. Ich habe ein Nodejs-Programm mit Express entwickelt und verwende Express direkt für die Weiterleitung statischer Ressourcen.
2 Jetzt wurde es in die Produktionsumgebung verschoben verantwortlich für statische Ressourcen

Frage:

Frage 1. Nach der Konfiguration stellte ich fest, dass alle statischen Ressourcen 404 waren, und fügte dann

in die Nginx-Konfigurationsdatei ein
 location ~ \.(css)$ {
        expires 2d;
    root /app/www/nodejs-blog-demo/public;
    }
    location ~ \.(js)$ {
        expires 2d;
    root /app/www/nodejs-blog-demo/public;
    }

Danach kann ich zumindest auf statische Ressourcen zugreifen. Wenn es sich bei meinen statischen Ressourcen jedoch um mehrstufige Verzeichnisse handelt, sind solche Zuordnungsregeln sehr kompliziert

Frage 2. Mein Nginx ist mit einem Reverse-Proxy konfiguriert, 3000 ist NodeJS, aber jetzt kann auf die Verarbeitung/das Verzeichnis zugegriffen werden, aber mein /admin/aaa-Pfad fordert 404 auf

    location / {
        proxy_pass              http://127.0.0.1:3000;
        proxy_redirect          off;
        proxy_set_header        X-Real-IP       $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    }

Ich denke, es könnte an der Routing-Verarbeitung liegen, die ich mit nodejs durchgeführt habe, aber ich weiß nicht, wie ich es lösen kann

Das Routing meines NodeJS ist wie folgt

module.exports = function (app) {
  app.use('/admin', router);
}

router.get('/aaa', auth.requireLogin, function (req, res, next) {})

Vielen Dank.

阿神阿神2666 Tage vor561

Antworte allen(1)Ich werde antworten

  • 世界只因有你

    世界只因有你2017-06-05 11:13:29

    express做静态路由不是很方便的吗,我最近也是直接把本地博客迁移到了服务器上,我的静态路由还是用的express

    app.use(express.static(path.join(__dirname, 'public')));

    Antwort
    0
  • StornierenAntwort