我会知道为什么request.getRequestURL()在我的servlet返回http而不是https,即使我用https调用它?
在后面,我有tomcat作为web服务器和haproxy作为反向代理和负载均衡器如果有人能告诉我为什么以及如何配置tomcat或haproxy不改变请求,我寻找proxyPreserveHost,但没有等同于haproxy谢谢你。
如果您正在使用反向代理(HTTP),那么Tomcat需要知道代理使用的协议是安全的。要做到这一点,你必须在<Connector>
和conf/server.xml
中设置一些东西:
<Connector
secure="true"
scheme="http"
您可能还想设置以下内容,尽管它们在您的环境中可能是不必要的:
proxyName="www.example.com"
proxyPort="443"
查看Tomcat配置指南获取更多信息。