如何解决 AWS ELB 重定向问题

如何解决 AWS ELB 重定向问题

我们已经将一个应用程序(基于 Tomcat)部署到 AWS EC2 实例。我可以直接访问该站点,并且可以通过内部 ELB 访问它。但是我无法再通过外部 ELB 访问它。我收到以下错误:

The page isn’t redirecting properly

An error occurred during a connection to my domain.

This problem can sometimes be caused by disabling or refusing to accept cookies.

我尝试过清除 cookies 和缓存数据。没有用。

我没有来自 ELBv2 的日志。有什么想法吗?

在 Amazon Linux 2、tomcat 7 最新版本上运行。

答案1

我怀疑你的应用程序会查看“HTTP Host”标头并期望某物,例如 host.example.com,如果没有看到,它会尝试重定向到那里。

或者应用程序是否尝试重定向到网站的 HTTPS 版本?如果您在负载均衡器上终止 HTTPS,然后将 HTTP(非 SSL)重定向到 EC2,则应用程序可能没有意识到请求最初是通过 HTTPS 发出的。它可能会尝试重定向到安全版本并进入重定向循环。或类似情况。

最好的办法是完全忽略HTTP 主机HTTP 与 HTTPS协议在应用程序中,并且只做相对链接相对重定向。这样,无论 ELB DNS 名称或 ELB 协议是什么都无关紧要,应用程序的行为始终相同。

希望有帮助:)

相关内容