为了账号安全,请及时绑定邮箱和手机立即绑定

AWS ELB 为 https://domain_name:8000 返回 404 但可通过

AWS ELB 为 https://domain_name:8000 返回 404 但可通过

Go
蝴蝶刀刀 2023-06-19 17:07:10
我是在 AWS 上部署 Web 应用程序的初学者,我相信我有一个与AWS 转发端口 8000 从 elb 到 EC2 端口 8000 的类似问题,我有一个 reactjs 前端和 golang api 在 aws ec2 上运行并且 golang api 正在运行在可通过我的 public_ip:8000 访问的端口 8000 上,当我访问 public_ip:8000 时,它给我消息说我的 golang api 正在运行。我使用弹性 IP 创建了 public_ip。我使用负载平衡器来获取 HTTPS,因为我有一些只能与 HTTPS 一起使用的功能。但是,当我使用我的https://domain_name:8000向我自己的 API 发送请求时,它说它不存在并且在我使用 Application Load Balancer 时给我 404 错误。我的域名使用 AWS 的 Route 53 和 AWS 名称服务器,应该没有问题,因为我被正确定向到我的正常域。我也添加了一条指向我的负载均衡器的 A 记录。我检查了使用的安全组,并打开了我的 IP 地址的端口。我的实例状态检查:下面是我如何配置应用程序负载均衡器的目标组:对于我的侦听器,我使用 HTTP 80、HTTPS 443 和 HTTPS 8000 转发到我的目标组。我已经尝试使用链接中提到的经典负载平衡器,但是当我使用我的域名时它们都会超时。任何人都知道更好的连接方式或在 AWS 上构建我的 reactjs 前端和 golang 后端应用程序的更好方式,这些应用程序可能需要打开其他端口以供 api 访问。我的经典负载均衡器端口转发配置:编辑:我注意到问题可能是我的目标组,因为它说端口 8000 不健康并且请求超时
查看完整描述

1 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

找出端口需要很长时间,谷歌搜索或 AWS 文档都没有帮助,所以我将我的 reactjs 前端放在一个运行在端口 80 上的 EC2 实例中,并将我的服务器/golang API 放入另一个运行在端口 80 上的 EC2 实例中,然后如果调用 HTTP:80 或 HTTPS:443,则设置 Application Load Balancer 以使用前端转发到目标组,如果调用 HTTPS:8000,则使用 golang API 转发到目标组。

确保实例与负载均衡器位于同一可用区,否则它将无法正常工作并确保一切正常。


查看完整回答
反对 回复 2023-06-19
  • 1 回答
  • 0 关注
  • 92 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信