我可以编码,但我对服务器或DNS设置一无所知。
我发现我可以轻松地使用beanstalk来启动我正在处理的应用程序,但我不完全了解如何正确创建DNS条目并启用HTTPS。
在Route 53中,我能够成功创建一个“托管区域”,将我的域指向amazons四个名称服务器,并创建两个A记录。我为“domain.tld”和“www.domain.tld”创建了一条A记录,并且我为别名选择了“是”,为评估目标健康状况选择了“是”。对于别名的每个A记录,我输入了长的“environment.key.region2.elastickbeanstalk.com”URL,他们给了我在Beanstalk中创建的应用程序。
令我惊讶的是一切正常,访问domain.tld或www.domain.tld转到根index.php文件。有一个更好的方法吗?我不确定我做的是否是正确的方法。
此外,我的问题的第二部分:如何设置HTTPS? - 我观看了一个YouTube视频,其中的人员访问服务>证书管理员输入“* .domain.tld”,我做了,选择了DNS验证,创建了一个CNAME记录,因为它要求我做,状态更新成功“发布”,我回到beanstalk>配置>负载均衡器并在“安全elb侦听器”下为协议选择HTTPS,并为我的证书选择“* .domain.tld”。
所以现在当我去www.domain.tld或domain.tld时,没有任何反应。如果我转到https://www.domain.tld,它会显示证书,但如果我转到https://domain.tld,它会说“连接不是私有的NET :: ERR_CERT_COMMON_NAME_INVALID”,请点击继续输入消息。
一般来说,我希望在没有人进入https://
的情况下自动转到https://domain.tld我不得不将我的环境类型更改为“加载平衡”以查看“https / certificate”设置,但我希望能够在“单个实例”上使用https。
此外,在更改Route 53“DNS内容”时,是否需要重新启动我的应用程序?
答案 0 :(得分:0)
1)你的Route53 - > EB设置听起来不错。
2)您在尝试浏览https://domain.tld时看到的证书问题是因为您的证书仅涵盖*.domain.tld
,但不包括domain.tld
。您可以重新颁发证书以涵盖两者。
3)如果您想将http://domain.tld
重定向到https://domain.tld
,您需要在您的网络服务器(apache,nginx等)中使用逻辑来执行此操作,因为DNS不会在协议级别。
4)如果要直接在EB实例而不是负载均衡器上使用证书,则必须安装证书并适当配置Web服务器。如果您能负担保持负载均衡器的费用,那么这将是一个更容易的解决方案。
5)在进行DNS更改后,您不需要重新启动应用程序。