J'ai installé un proxy inverse sur mon serveur avec nginx inside docker, et depuis lors toutes les demandes redirigent vers https même si je n'ai pas défini tous les emplacements à la redirection https.empêcher la redirection vers https et URI hacks proxy inverse nginx
Fondamentalement ce que je veux est de pouvoir servir à la fois https et http avec le proxy inverse. En outre, je veux être en mesure de rediriger vers différents URI dynamiquement, par exemple je veux définir toutes les routes de/bla2/foo/bar pour être redirigé vers ce qui vient après/bla2 ce que j'ai essayé d'obtenir ici est que chaque fois l'accès à example.com/bla2/foo/bar il devrait rediriger vers example.com/foo/bar~~V~~singular~~3rd sans la section BLA2 ...
- Est-il possible sur le même fichier de configuration?
- ce qui peut provoquer mon serveur pour rediriger toutes les requêtes en https
Ceci est mon serveur nginx.conf
server {
listen 443;
ssl on;
ssl_certificate /etc/ssl/example.com.crt;
ssl_certificate_key /etc/ssl/example.com.key;
listen 80;
server_name example.com;
location /bla/bla {
proxy_pass http://example.com:3980/foo/bar1;
}
**location /bla2/**{
# proxy_pass http://example.com:3004;
return 301 http://example.com:3004$request_uri;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-Proto $scheme;
}
location /app3 {
rewrite ^/app3(.*) /$1 break;
proxy_pass http://example.com:1236/app3;
}
}
Je veux être en mesure d'obtenir directement le contenu de http://example.com:3004 si Je l'ai mis dans le navigateur sans aucune redirection vers https. Seulement si j'essaie d'accéder example.com/bla2 je veux qu'il soit requis https au lieu de http, et d'être redirigé vers un chemin différent.
Quel est le problème en ce moment? Aussi ce qui fonctionne sur 3004? NodeJS? –
J'ai 2 questions différentes, l'un est le http redirigé vers http, peu importe si je désigne une application, et l'autre le problème de routage comme je l'ai mentionné ci-dessus. Je viens d'éditer le contenu, j'espère que c'est plus clair maintenant. Oui, les applications sont node js apps – user4860092
Si vous accédez directement dans le navigateur 'http: //example.com: 3004 /' et que vous redirigez vers https, il se peut que ce soit uniquement parce que votre application envoie cette redirection. Assurez-vous également d'effacer le cache du navigateur. –