Poiché di solito questo è un problema di distribuzione, piuttosto che un problema di applicazione, un altro approccio sarebbe configurare il contenitore dell'applicazione in modo appropriato. Una volta configurato, il contenitore si occupa di ispezionare l'intestazione appropriata e l'applicazione continua a utilizzare request.getRemoteAddr()
.
Ad esempio, in Tomcat è possibile utilizzare lo Remote IP Valve. Presumo che la maggior parte dei server applicativi abbia funzionalità simili.
Il contenitore potrebbe anche comprendere se il servizio di bilanciamento del carico front-end sta terminando le connessioni SSL, inoltrando la richiesta al server delle app su HTTP. Questo è importante quando l'applicazione deve generare URL a se stessa.
grazie, vado a controllare le intestazioni .... anche quando passa attraverso un server web, ad esempio, ho quindi ottenere l'indirizzo web server – grassbl8d
Vuoi dire request.getHeaderNames()? – theyuv