Nel prossimo futuro avrò 3 server nginx. Uno è un proxy inverso per SSL per gli altri due. Quindi, per esempio, vado a:
https://www.mysitename.com/site1
Gli altri due server in questo esempio sono site1 e site2. Ho installato il certificato SSL sul proxy e voglio usare un proxy inverso (SSL non richiesto poiché tutti e 3 sono su una rete interna). A scopo di test sto avendo nginx in ascolto su 443 per SSL / reverse-proxy, in ascolto su porta 8081 che è un'app di binari per site1 e 8082 per site2.
Ho questo...
server {
listen 443;
server_name mysitename.com;
ssl on;
ssl_certificate ssl/mysitename.com.crt;
ssl_certificate_key ssl/mysitename.com.key;
keepalive_timeout 60;
location /site1 {
proxy_pass http://localhost:8081;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect http:// https://;
}
location /site2 {
proxy_pass http://localhost:8082;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect http:// https://;
}
}
Quindi, quando visito il sito www.mysitename.com/site1, voglio sostanzialmente che ritorni ciò che normalmente verrebbe da localhost: 8081 (o più tardi un indirizzo IP interno per un altro server).
C'è un modo per spogliarlo "site1" dalla chiamata localhost? Quello che sembra fare sta usando localhost: 8081 / site1. I siti site1 e site2 sono della natura "/ login / index" o "/ qualunque / elenco", ecc., Senza "site1".
Ci sono anche reindirizzamenti nei controller del sito (usando redirect_to) che vanno da cose come / login / index a / qualunque / elenco.
Devo ridisegnare gli URL del sito per utilizzare site1? O il proxy NGINX può capirlo?
Grazie.