如何配置 AWS CloudFront 以通过自定义端口使用安全的 Websocket?

问题描述 投票:0回答:1

我一直在尝试配置我的AWS云前端,以便能够使用端口3200从客户端到服务器使用websocket wss。

我有一个运行 ubuntu 的 EC2 实例,上面有:

  1. 在ubuntu上:
  • 在端口 3200 上运行 websocket 服务器的节点
  • 借助 Nginx,React 客户端在端口 80 上提供服务
  1. 在 AWS 上:
  • 为 HTTPS 配置的安全组

我拥有 AWS 的域名和 AWS 的 SSL 证书。

我配置了cloudfront:

  1. 使用证书将 HTTP 请求重定向到 ec2 实例上的 HTTPS(这是有效的)

  2. 我也尝试将 HTTPS 端口 3200 重定向到 ec2 实例,我在源请求策略中添加了 WebScoket 的标头(例如:Sec-WebSocket-Version)。

终于配置了 Route 53 :

  1. 在我的云端输入 A
  2. 证书的 CNAME

我在云端配置上尝试了很多调整:

  • 同时允许 HTTP 和 HTTPS
  • 更改原始路径或端口

不幸的是,当我尝试调用我的服务器时,我运行超时。

我还检查了负载均衡器和 API 网关,但如果有一种方法可以仅使用 Cloudfront 来实现,我宁愿不使用它们。

有什么我遗漏或误解的吗?

感谢您的帮助。

amazon-web-services amazon-ec2 websocket amazon-cloudfront amazon-route53
1个回答
0
投票

我放弃了 Cloudfront,因为我认为它无法按照我想要的方式进行配置。 所以我选择了应用程序负载均衡器,在那里我可以正确设置我想要的内容。

© www.soinside.com 2019 - 2024. All rights reserved.