Glassfish 3.1.2.2在SSL端接负载平衡器后面

Glassfish 3.1.2.2在SSL端接负载平衡器后面,ssl,glassfish,glassfish-3,load-balancing,Ssl,Glassfish,Glassfish 3,Load Balancing,我所在的组织目前正在Glassfish 3.1.2.2上运行一个应用程序,该应用程序位于一个硬件(软件/云的问题相同)负载平衡器后面,该负载平衡器还负责SSL终止。我们目前在Glassfish方面遇到了一些问题,因为我们不知道它在SSL连接后面,因此无法正确生成某些内容。具体如下: 会话cookie未标记为安全 Glassfish生成的重定向是通过http://而不是https:// request.isSecure()未返回正确的值 request.getScheme()未返回正确的值 理

我所在的组织目前正在Glassfish 3.1.2.2上运行一个应用程序,该应用程序位于一个硬件(软件/云的问题相同)负载平衡器后面,该负载平衡器还负责SSL终止。我们目前在Glassfish方面遇到了一些问题,因为我们不知道它在SSL连接后面,因此无法正确生成某些内容。具体如下:

  • 会话cookie未标记为安全
  • Glassfish生成的重定向是通过
    http://
    而不是
    https://
  • request.isSecure()
    未返回正确的值
  • request.getScheme()
    未返回正确的值
理论上,我们可以在负载平衡器中重写所有这些内容,但在以前使用Tomcat的项目中,我们已经能够在容器级别解决所有这些问题

在Tomcat中,我可以在HTTP连接器定义上设置安全标志和方案值,一切都很好。但我似乎找不到玻璃鱼的对应物


任何人都有IDE吗?

如果负载平衡器提供
X-Forwarded-Proto
头,您可以尝试在
域.xml的
http
定义中使用
方案映射
属性:

<http default-virtual-server="server"
      max-connections="100"
      scheme-mapping="X-Forwarded-Proto">...

glassfish似乎有一些与
方案映射相关的
支持。

此负载平衡器在向glassfish传递请求时是否提供X-Forwarded-Proto标头?@vbo我正在使用的一个目前没有此功能(我不知道OP)。但我很想知道如何做到这一点,即使它做到了。
location / {
    proxy_set_header X-Forwarded-Proto https;
    proxy_pass http://glassfish;
}