Amazon web services 使用应用程序负载平衡器将http重定向到https
我使用的是映射到一台服务器(Apache)的某些路径和到另一台服务器(Tomcat)的其他路径 我通过在负载平衡器上设置一个https,使我的站点上的所有页面都可以通过https访问 因此,从客户端到负载平衡器的请求是加密的,但从负载平衡器到服务器的请求不是加密的 现在,我还要将所有http请求重定向到https 有什么建议我可以这样做吗 我可以分别重定向每个服务器(即:按照概述重定向tomcat http请求,并使用重定向规则重定向Apache http请求)。然而,我想知道是否有一种更简单的方法来实现这一点(即:对于每台服务器,我只需要一个重定向,而不是一个单独的重定向)Amazon web services 使用应用程序负载平衡器将http重定向到https,amazon-web-services,tomcat,ssl,redirect,https,Amazon Web Services,Tomcat,Ssl,Redirect,Https,我使用的是映射到一台服务器(Apache)的某些路径和到另一台服务器(Tomcat)的其他路径 我通过在负载平衡器上设置一个https,使我的站点上的所有页面都可以通过https访问 因此,从客户端到负载平衡器的请求是加密的,但从负载平衡器到服务器的请求不是加密的 现在,我还要将所有http请求重定向到https 有什么建议我可以这样做吗 我可以分别重定向每个服务器(即:按照概述重定向tomcat http请求,并使用重定向规则重定向Apache http请求)。然而,我想知道是否有一种更简单的
谢谢。我在寻找解决同一问题的方法时发现了这个问题。这是Apache、Nginx和IIS的代码示例
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule .* https://%{HTTP:Host}%{REQUEST_URI} [L,R=permanent]
</VirtualHost>
重新启动发动机
RewriteCond%{HTTP:X-Forwarded-Proto}=HTTP
重写规则。*https://%{HTTP:Host}%{REQUEST_URI}[L,R=permanent]
您是否考虑过实施HST?谢谢我对HST了解不多,但据我所知,即使我真的实现了HST,我也需要在重定向(不是代替)的基础上这样做……因此我的问题仍然存在。负载平衡器无法发出重定向。您必须将web服务器配置为检查
x-forwarded-proto
值并发出相应的重定向。谢谢@MarkB,是否有一些文档说明如何最好地为Tomcat执行此操作?以下是您的难题的答案: