如何使用ACM为指向不同目录根的测试和生产服务器设置CloudFront分发的DNS



我在使用AWS证书管理器(ACM(、AWS EC2(linux AMI(、AWS CloudFront(CF(、Google DNS和Apache服务器的组合配置来服务test.domain.com的请求时遇到了困难。

我在public_html目录中有以下设置:

我在/var/www/html中有两个文件夹

  • 产品
  • 试验

目标是为使用test目录从test.domain.com接收的请求和使用prod目录从domain.com接收的请求提供服务。

安装程序使用acme ssl证书运行良好,即,对于生产(domain.com(,我们使用acme ssl证书,DNS指向Elastic IP,运行良好。甚至test.domain.com也在工作acmessl设置很好。

然而,我正在尝试切换到ACM。由于它只适用于CF和ELB(AWS弹性负载均衡器(,因此创建了CF分发版。

  • 创建了一个指向原始路径为/test的AWS EC2端点的CloudFront(CF(分发
  • 已将test.domain.com重定向到Google DNS中的CF分发,因为该域已向他们注册

使用此设置,test.domain.com还将显示domain.com,而不是预期的测试服务器。

https.conf为每个ServerName都有正确的DocumentRoot。但是,请求没有到达测试服务器的虚拟主机。。

缺少什么?请建议。。

您可以尝试以下操作:

  1. 将domain.com和test.domain.com添加到CloudFront CNAME列表中
  2. ACM证书,其通用名称/SAN为domain.com和*.domain.com(或test.domain.com(
  3. 在CloudFront缓存行为中,将HOST标头设为白名单,这将确保当客户端访问domain.com时,CloudFront在联系来源时在主机标头中发送相同的值

链接:转发主机头

最新更新