AWS ELB或域名URL重定向到EC2实例公共DNS

3
我刚刚开始使用AWS,并尝试将在Godaddy注册的域名映射到AWS实例,以下是我尝试过的方法:
1. 创建了EC2实例和弹性IP。将弹性IP映射到实例。 2. 使用Route 53创建托管区域。更新Godaddy名称服务器以获得新分配的名称服务器。 3. 在AWS托管区域中创建了一个记录集(A记录),将我的域名(e.g.www.example.com)指向弹性公共IP,并进行了映射。 4. 创建了一个ELB,并将步骤1的实例添加到其中。 5. 创建了另一个记录集(CNAME),e.g. test.example.com,并将其映射到ELB公共DNS。
这两个域名(www.example.com和test.example.com)都重定向到EC2实例的公共DNS(http://ec2-52-11-xxx-xxx.us-west-2.compute.amazonaws.com/)。如果我直接访问ELB网址(test-elb-34243545.us-west-2.elb.amazonaws.com),也会重定向到EC2实例的公共DNS (http://ec2-52-11-xxx-xxx.us-west-2.compute.amazonaws.com/).
"重定向"的意思是URL在地址栏中更改,Chrome控制台也显示302重定向。
我不希望地址栏中的URL更改。不确定我做错了什么,请帮忙看看。谢谢!

302响应与所描述的设置无关,很可能来自Web服务器或您的应用程序。 - Dusan Bajic
1个回答

2
如果您希望流量通过ELB(这是一件好事)而不是直接到达EC2实例,则不需要弹性IP。相反,在您的Route53托管区域中为www.example.com创建一个CNAME,指向ELB名称(看起来像${load_balancer_name}-${account_id}.${region}.elb.amazonaws.com)。现在当您访问www.example.com时,将会命中ELB,然后负载均衡流量到其下方连接的任何EC2实例。您还可以将EC2实例保留为纯私有IP地址,以便无法直接访问EC2实例而必须通过ELB进行访问。

感谢ydaetskcoR的建议,我已经移除了弹性IP。但后来发现这是一个应用程序问题。这是一个AWS镜像中附带的开源产品。我需要显式地为部署的域名配置应用程序。默认情况下,它总是使用实例DNS。 - rjha

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接