Esse problema é devido ao Tomcat não saber o% externo% realURL do aplicativo.
Quando o aplicativo redireciona para um URL relativo, o Servlet adiciona o URL absoluto completo ao local (conforme necessário).
Se você estiver usando HTTP entre IIS e Tomcat, o Tomcat acredita que você está usando HTTP e gera http://... absolute URL .
A solução não está usando HTTP (nem HTTPS ) entre IIS e Tomcat.
Você deve usar o protocolo AJP13 e Tomcat-ISAPI Redirector on IIS . Aqui está o oficial Tomcat + IIS como .
Usando o Apache como proxy você pode usar HTTP para proxy, mas você precisa configurar o mod_proxy do Apache e informar ao Tomcat que ele está por trás de um proxy. Aqui está um como sobre esse processo .