我有以下情况:
NGINX | | JavaEE TERMINATING | -> REVERSE PROXY -> | Application SSL (443) | HTTP | Server
反向代理是由:
location /app/ { proxy_set_header X-Forwarded-Proto https; proxy_set_header Host www.example.com; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header REMOTE_ADDR $remote_addr; proxy_pass http://192.168.0.10:8080/app/; }
问题在于,在应用程序服务器(即位置:/ app / login)上执行的所有相对redirect都被redirect到http://www.example.com/app/login
而不是其https对应https://www.example.com/app/login
。
所以,为了解决这个问题,我把它添加到了NGINX的位置configuration中:
proxy_redirect http://www.example.com/ https://www.example.com/;
它开始工作没有问题。
我的问题是:有这样一个redirect是不是很好? 有没有另外一种方法呢?