Nginx-Standortproxy-Pass zu einem anderen Portpfad

Nginx-Standortproxy-Pass zu einem anderen Portpfad

Ich habe zwei Docker-Container für React- (http://localhost:90) und NextJS-Anwendungen (my-next-app.com / http://localhost:85) ausgeführt, und ich habe eine Nginx-Konfiguration ähnlich der folgenden

    server {
    listen 443 ssl http2;
    ssl on;
    ssl_certificate /foo.crt;
    ssl_certificate_key /foo.key;
    server_name www.my-next-app.com my-next-app.com;

    location / {
        ...
        proxy_pass http://localhost:85;
    }
   }

Und was ich versuchte zu tun, als ich auf diesewww.my-next-app.com/faq, ich möchte, dass der Benutzer stattdessen die FAQ-Seite meiner React-App sieht (http://localhost:90/faq)

    server {
    listen 443 ssl http2;
    ssl on;
    ssl_certificate /foo.crt;
    ssl_certificate_key /foo.key;
    server_name www.my-next-app.com my-next-app.com;

    location / {
        ...
        proxy_pass http://localhost:85;
    }

    location /faq {
        ...
        proxy_pass http://localhost:90/faq/;
    }
  }

Ich habe die obige Konfiguration ausprobiert, aber sie hat nicht funktioniert. Ich möchte nur wissen, ob dies möglich ist. Außerdem wäre ich für eine Anleitung sehr dankbar. Ich habe folgende Ausgabe auf der Browserkonsole erhalten

Uncaught SyntaxError: Unexpected token '<' (at main~eec90089.js:1:1)

Antwort1

Versuchen Sie, den Proxy-Pass für /faq/ über den Proxy-Pass für / zu platzieren.

verwandte Informationen