- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过 AWS CodeDeploy 部署 PHP,目前卡在 CodeDeploy 中的 AllowTraffic 步骤。该应用程序位于 ALB 后面的 EC2 实例上。在 ALB 中,我的健康检查失败了。我将 PHP 应用程序代码放在 EC2 实例的以下目录中:/var/www/html/src
。如果我在代码所在的目录后面 curl EC2 的私有(private) IP,我会收到错误 404 Not Found。即使 index.php
文件在该目录中,我也无法对其进行 curl 。目前我有安全组设置,其中 ALB 安全组仅允许来自 HTTP 的任何流量,并且允许来自 ALB 安全组的所有流量到达 EC2 实例。我能够 curl 实例的根目录并查看 Apache 的默认页面。
如果我要调整 ALB 目标组上的健康检查设置,将健康检查设置为 /
时会收到 403 错误。指定包含 PHP 应用程序代码的目录的路径时出现 404 错误。
如有任何关于如何使 ALB 实例处于健康状态的建议,我们将不胜感激。
Application Load balancer 安全组允许端口 80 上的流量EC2 实例安全组允许来自 Application Load Balancer 安全组的流量。
PHP 应用程序应该可以在运行 Apache 的端口 80 上访问。应用程序负载均衡器只有 1 个为端口 80 设置的监听器,用于将流量转发到目标组。
最佳答案
TG 中的健康检查路径应该是URL 路径,而不是EB 实例上的实际位置。你可以试试 /index.php
:
/index.php
这假设您的应用程序确实在工作,唯一的问题是健康检查。
关于amazon-web-services - 应用程序负载均衡器背后的 PHP 应用程序未通过健康检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71135957/
我是一名优秀的程序员,十分优秀!