Nginx fonctionne sur le port 80 et je l'utilise pour inverser les URL de proxy avec le chemin /foo
d' accès au port de 3200
cette façon:
location /foo {
proxy_pass http://localhost:3200;
proxy_redirect off;
proxy_set_header Host $host;
}
Cela fonctionne bien, mais j'ai une application sur le port 3200
, pour laquelle je ne veux pas que l'initiale /foo
soit envoyée. C’est-à-dire que, lorsque j’accède http://localhost/foo/bar
, je veux seulement /bar
être le chemin reçu par l’application. J'ai donc essayé d'ajouter cette ligne au bloc de localisation ci-dessus:
rewrite ^(.*)foo(.*)$ http://localhost:3200/$2 permanent;
Cela provoque 302 redirection (changement d'URL), mais je veux 301. Que dois-je faire?