我的iOS软件平台在AWS Elastic Beanstalk上运行,并且有一个我们称之为“something.elasticbeanstalk.com”的URL。我有一个网站,我们称之为“website.com”我通过Namecheap购买并运营DNS记录。我需要将我的iOS客户端应用程序使用的URL连接到服务器HTTPS,因为Apple因App Transport Security而很快就要求这样做。
我认为我支持做什么
我认为我应该做的是,为“website.com”创建SSL证书,并将该SSL证书应用于AWS EB负载均衡器。然后我需要为“website.com”创建一个子域名,将流量重定向到“something.elasticbeanstalk.com”。客户端应用程序连接到“website.com”的子域,该子域现在是HTTPS并重定向到“something.elsastic.beanstalk.com”。 这是正确的吗?
我做了什么
到目前为止,我使用AWS Certificate Manager为“website.com”创建了SSL证书。为此,我必须验证与“website.com”相关联的电子邮件地址。然后,我将该SSL证书应用于AWS管理控制台中的环境负载均衡器。之后,我进入了Namecheap并按this guide in the 'Domain Name & AWS 53 Management' section进行了操作。
我在this article中读到我需要在AWS Route53中创建别名和/或设置名称服务器。我试过这样做,但不知道我在做什么,它似乎与我上面链接的媒体文章冲突,我跟着告诉我更改URL的CNAME记录和“website.com”的重定向URL记录
问题
我该怎么做?
答案 0 :(得分:2)
<强>状况强>
- 我在Elastic Beanstalk上有一个解析服务器,其URL为“something.elasticbeanstalk.com”
- 我有Namecheap的域名为“website.com”
我需要什么
我需要让我的客户端应用程序连接到HTTPS地址,因为Apple很快就要求使用App Transport Security。由于我无法使用AWS证书管理器获取“something.elasticbeanstalk.com”的SSL证书,因此我为“website.com”创建了一个。然后,我需要将我的客户端应用程序连接到HTTPS“website.com”,然后将其转发到“something.elasticbeanstalk.com”。这满足了Apple的HTTPS要求。
如何做到
使用AWS Certificate Manager为“website.com”制作SSL证书。您需要通过确认电子邮件向管理员确认域名。
Apple将“website.com”的SSL证书发送给AWS EB Load Balancer。转到AWS EB控制台,单击“配置”,单击“网络层”类别下的“负载平衡”。现在,在“Load Balancer”的第一个类别下,选择您制作的SSL记录并将其应用于“SSL证书ID”部分。
为“website.com”设置一个CNAME记录,其中包含您想要的任何“website.com”子域。我选择“数据”作为我的主机值和子域(所以我的子域名是“data.website.com”)。将CNAME记录的值设置为“something.elasticbeanstalk.com”。等待它传播。它通常很快但并非总是如此。
(我不确定这个特定的步骤是否正确,但它对我有用)将Parse-Server的serverURL设置为“https://something.elasticbeanstalk.com”,将publicServerURL设置为“https://data.something.com”< / p>
在客户端应用中的Parse“initializeWithConfiguration”方法中,该方法允许应用连接到服务器,将服务器URL更改为“https://data.something.com/parse”。注意:包括“/ parse”,它是解析服务器的MOUNT PATH。根据您的设置方式,这个值可能与您不同,但我将其设置为“/ parse”,因为这是我在Parse-Server文档中看到的。
备注强>
-I删除了所有Route53记录,因为它们在这里无关紧要,因为“something.com”DNS服务由Namecheap控制。
- Namecheap中的重定向URL记录是不必要的