问题描述
我在 ec2 实例上托管了一个 python Flask 应用程序并且运行完美。当我运行 python 文件时,它托管在 http://132.2303.9:5000/ 上,我可以通过我的网络访问它,但我想知道如何将它连接到我的 Godaddy 域名 http://abcd.com 以便我的用户可以使用这个 abcd.com url 使用相同的 aws ec2 机器访问我的服务。 我是 aws 的新手,看过一些关于 Route53 的教程,但无法弄清楚 . 谁能帮我解决这个问题。谢谢
解决方法
首先,确保您已创建弹性 IP 地址并将其与您的 Amazon EC2 实例相关联。这是一个“静态”地址,在实例停止时不会改变。
接下来,在 GoDaddy 上访问您的域名的 DNS 设置。
在这些 DNS 设置中,您应该添加一个 A-Record
指向 EC2 实例的 IP 地址。这将使 abcd.com
解析为 IP 地址。
然后,修改在您的实例上运行的软件,使其侦听端口 80。这样就无需将 :5000
添加到 URL。
详情见:How do I get Flask to run on port 80? - StackOverflow
,首先,您需要在 HTTP(80) 端口中公开您的服务。为此,您可以使用 Nginx 作为 Web 服务器。将 Nginx 服务器设置为侦听 80 并将反向代理设置为您的服务。 Nginx 将接收请求并将其转发给您的服务。
完成后,您可以在 route53 A 记录上配置您的 ec2 IP 和 DNS。