我有一个前端Apache我们的服务器,它只回答http请求。它充当许多Web应用程序服务器的前端负载平衡器。现在我有一个新的web应用程序,我只想在https上托管。我的问题是如何将所有https请求从apache服务器重定向到我的Web应用程序。是否可以使用mod_jk。
我不想在前端Web服务器上设置https。
有可能吗?
我的webapp在glasshfish 3.1.2
上答案 0 :(得分:1)
如果您的前端Web服务器未侦听HTTPS端口(443),则无法转发针对此端口的流量。正确的解决方案是在前端Web服务器上设置HTTPS并使用mod_jk或mod_proxy_ajp转发请求。在生产环境中,出于安全性,性能和维护原因,您应始终使用前端Web服务器。
要重定向访问端口80的用户(强制使用HTTPS),您可以在apache配置中使用mod_rewrite指令,如下所述。如果您的GlassFish服务器直接在没有前端Web服务器的端口443(HTTPS)上进行侦听,这也可以使用。
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]