Gaj*_*ara 42

使用Amazon AWS Route 53和Apache 2.4 Web服务器

使用通配符创建Canonical名称,以将所有子域流量路由到位于的根Web服务器.

规范名称

现在添加子域详细信息以及如下所示的根域路由.

在此输入图像描述

# -----------------------------------
# GS - Virtual Host Configurations
# -----------------------------------
<VirtualHost *:80>
    ServerName www.gajen.com
    ServerAlias gajen.com
    DocumentRoot "/var/www/html"
</VirtualHost>


# Stagings
# --------

# Discovery
<VirtualHost *:80>
    ServerName discovery.gajen.com
    DocumentRoot "/var/www/html/discovery"
</VirtualHost>

# Alpha
<VirtualHost *:80>
    ServerName alpha.gajen.com
    DocumentRoot "/var/www/html/alpha"
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

  • 有人可以告诉我如何用nginx做到这一点? (3认同)
  • 到目前为止,这是最好的答案. (2认同)
  • 只是一个说明 - 您缺少一个尾随点。在您的 DNS 记录值的末尾。应该是gajen.com。 (2认同)

Nea*_*gee 22

我发现这里的其他答案有点神秘.以下是在Route53中托管域名apex和该域名的任何其他主机名的主要步骤.假设您通过GoDaddy或Network Solutions或任何地方购买了域名.(到2014年中期,您可以直接在Route53购买域名):

  1. 通过访问https://console.aws.amazon.com/route53/home并创建新的托管区域,在Amazon的Route53中创建一个新的区域存根.该进程将传播具有四个NS记录和一个SOA记录的空区域文件.复制四个NS服务器名称.[如果您在Route53中购买了域名,这将自动为您完成,您可以跳过下面的步骤23. ]
  2. 在您的域名注册商(GoDaddy,eNom,网络解决方案等)中,编辑特定域的DNS主机,并将步骤1中的四个值放到位.保存并传播.
  3. 现在,您的域的DNS托管在Amazon的Route53中,并且很可能比域名供应商托管时更快,更强大.
  4. 在您的新Route53区域文件中添加更多记录,例如区域顶点记录(@记录)或www记录等.注意:Route53不允许使用"@"别名 - 您必须拼出域名-name.com.(务必在名称后面使用尾随点!)
  5. 现在,将Route53用于DNS的一大优势是,如果您的站点位于Amazon ELB地址后面,您可以将区域顶点(@记录)映射到该ELB地址的别名.只需创建一个包含区域顶点("company.com.")的A记录,确保留下尾随点.然后在记录值的正上方选择"Alias",您将在下拉菜单中选择,或者您可以粘贴ELB名称.或者,如果您的区域顶点应指向一个简单的IP地址,请选择A记录并添加IP.

如果您在多个AWS区域(不仅仅是跨多个AZ)运行节点,您还可以使用Route53的"基于延迟的路由",这将指导用户在任何给定时刻给定延迟的最快节点(它基于最低延迟,而不是最近的延迟)地理位置).或者您可以使用Route53的健康检查来设置您的记录值 - 例如,如果健康检查通过,您的A记录指向1.2.3.4,如果失败,A记录指向5.6.7.8.

编辑:我发现的另一个有用的Route53技巧(通过偶然事件,虽然我后来读到它是一个已知/支持的功能)是你可以使用A记录别名指向其他AWS中的ELB(或存储桶,CloudFront发行版等)账户.它们不会在别名的下拉列表中自动填充,但您可以将它们复制+粘贴到"别名目标"输入中.


小智 7

您没有在AWS中"创建"域或子域.域名在注册商级别创建 - GoDaddy,Network Solutions,VeriSign等,同时在DNS中创建子域.

如果您指的是如何创建Web服务器以响应mydomain.com和/或subdomain.mydomain.com,那么您将需要更改mydomain.com DNS记录以指向您的Amazon EC2实例的IP地址.

首先,启动您打算用作Web服务器的EC2 AMI.然后,您需要使用AWS控制台分配弹性IP地址,并将其分配给Web服务器实例.记下弹性IP是什么.现在转到注册商的域控制面板,添加/更改名为"www"和"@"的A或CNAME记录的IP地址,以匹配您分配给Web服务器实例的弹性IP.现在为您的子域创建一个新的CNAME记录并将其指向"@".保存更改.

如果您的Web服务器实例正在运行Apache,您现在必须配置基于名称的虚拟主机 - 网上有大量的教程.如果您运行的是IIS,则必须为站点分配主机标头.同样,还有很多教程.谷歌是你的朋友.

希望这可以帮助.


Lyn*_*nob 1

您不会将域名转移到 AWS。而是分配一个弹性 IP 地址并将其关联到您的实例。然后转到您的域名提供商并将您的域名指向弹性 IP 地址。您无需将域转移到 AWS。您可以从 AWS 管理控制台执行此操作。

通过这种方式,您可以启动第二个实例并测试任何应用程序更新,然后只需将弹性 IP 移动到第二个实例,而无需与域提供商进行任何更改

http://www.youtube.com/watch?v=c8yuGvnU3A0