Donc, je mets en place un chemin virtuel lors de la redirection vers une application node.js dans ma configuration nginx. La section pertinente ressemble à ceci :
location /app {
rewrite /app/(.*) /$1 break;
proxy_pass http://localhost:3000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
Fonctionne très bien, sauf que lorsque mon application node.js (une application express) appelle une redirection.
Par exemple, la boîte de développement exécute nginx sur le port 8080, et donc les URL vers la racine de l'application node ressemblent à ceci :
Lorsque j'appelle une redirection vers '/app' depuis node, la redirection réelle se fait vers :
2 votes
Voici quelques réponses suggérant l'utilisation : proxy_set_header Host $http_host; Mais personne n'a mentionné que cela pouvait causer une vulnérabilité (attaque de l'en-tête de l'hôte). Exemple d'attaque ici Et plus d'informations ici