AWS多个域指向单个EC2 Linux实例

ASV*_*hya 1 amazon-s3 amazon-ec2 amazon-web-services amazon-route53 aws-lambda

是否可以设置多个域来指向一个 Linux ec2 实例?

例如:我已经注册了以下 3 个域,我需要在单个 Linux EC2 实例中指向以下路径:www.domain1.com - var/www/html/domain1

www.domain2.com - var/www/html/domain2

www.domain3.com - var/www/html/domain3

Nan*_*ans 5

很有可能。您可以在域名注册商的 dns 区域中添加 A 记录,指向 ec2 实例的弹性 IP,以路由请求。如果您使用公共 dns 而不是弹性 IP,则可以添加 CNAME 记录而不是 A 记录

此外,您可以在 ec2 内使用 apache 将请求路由到所需的应用程序路径。步骤如下。(这假设您已将要为 3 个域提供服务的文档根复制到问题中提到的相应路径)

步骤 1:使用域名注册商(在您的情况下是爸爸)DNS 区域配置将您的第二个和第三个域也配置为指向相同的 EC2 公共 IP。 (假设所有 3 个域名尚未上线)

步骤 2:为您想要的 3 个域创建虚拟主机文件。内容如下。

文件1:/etc/httpd/conf.d/domain1.com.conf及其内容

<VirtualHost *:80>

  ServerName www.domain1.com
  ServerAlias domain1.com
  DocumentRoot /var/www/html/domain1
  ErrorLog /var/www/html/www.domain1.com/error.log
  CustomLog /var/www/html/www.domain1.com/access.log combined

</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

文件2:/etc/httpd/conf.d/domain2.com.conf

<VirtualHost *:80>

  ServerName www.domain2.com
  ServerAlias domain2.com
  DocumentRoot /var/www/html/domain2
  ErrorLog /var/www/html/www.domain2.com/error.log
  CustomLog /var/www/html/www.domain2.com/access.log combined

</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

文件3:/etc/httpd/conf.d/domain3.com.conf

<VirtualHost *:80>

  ServerName www.domain3.com
  ServerAlias domain3.com
  DocumentRoot /var/www/html/domain3
  ErrorLog /var/www/html/www.domain3.com/error.log
  CustomLog /var/www/html/www.domain3.com/access.log combined

</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

完成后,您可以重新启动 apache 并检查。

希望这可以帮助

注意:如果这对您不起作用或者您遇到一些错误,请在响应中包含 apache 版本、操作系统和版本:)