1 votes

Comment changer le port d'une redirection reçue par nginx ?

J'ai installé un nginx sur mon serveur. Il reçoit toutes les demandes et les transmet à un serveur IIS situé derrière lui. Mon problème est que mon site fonctionne sur le port 2000. Parfois, il envoie des redirections à nginx qui contiennent le port 2000 et après cette redirection, les utilisateurs ne passent pas par nginx. Je veux réécrire une règle dans mon nginx pour obtenir toutes les redirections et définir le port à 80 afin que les utilisateurs n'aillent pas directement à l'IIS. Je peux également résoudre ce problème en modifiant le code C#, mais je ne veux pas modifier le code.

0voto

Ginnungagap Points 1939

Je ne suis pas sûr de comprendre, mais je vais essayer.

D'après ce que je comprends, vous avez A qui exécute NGINX en écoutant sur :80 (peut-être :443) et A ou B (je ne sais pas si IIS est exécuté sur la même machine, bien que je ne pense pas puisque les utilisateurs semblent pouvoir l'atteindre directement) qui exécute IIS en écoutant sur :20000.

Si A exécute les deux, vous n'avez pas de chance, vous ne pouvez pas faire en sorte que NGINX et IIS se lient au même port, donc vous ne pourrez pas le faire via NGINX. Cependant, vous pouvez utiliser votre pare-feu pour que les requêtes adressées à :20000 qui ne proviennent pas de localhost soient transmises à :80. Cela fonctionne également dans le second cas si vous souhaitez procéder de cette manière.

Si A exécute NGINX alors que B exécute IIS, vous pouvez toujours indiquer à NGINX d'écouter sur :20000 également et le transmettre à IIS.

Dans tous les cas, si IIS n'est pas censé être accessible par d'autres moyens que NGINX, vous devriez avoir une règle de pare-feu empêchant son accès depuis l'extérieur.

0voto

DannyZB Points 269

Mettez ceci dans votre configuration nginx :

port_in_redirect off;

http://nginx.org/en/docs/http/ngx_http_core_module.html

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X