2016-02-01 121 views
0

所以這裏是獨家新聞。忍受我在這裏,這是一個漫長的一天。我有一個域名,我們會打電話給company.com。然後我有一個後端域名(適用於較短的網址和東西),我們將其稱爲compa.ny。兩者都通過Let's Encrypt獲得SSL證書,並且兩者都被迫通過HTTP連接。Amazon CloudFront和HTTPsL我該怎麼辦?

我使用Amazon CloudFront提供我的媒體資產,因爲它比託管在我的VPS上更快,更便宜。所以...

我有一個CNAME記錄compa.ny用我的CloudFront域設置。那是 cdncompa.ny。我確保CloudFront資產也通過HTTP提供服務。這裏是事情變得油膩的地方。

當我的瀏覽器(Chrome)連接到 cdncompa.ny,它被重新發送到CloudFront域,並且所提供的SSL證書是由 Amazon CloudFront所擁有的證書。問題在於瀏覽器出現「哦,嘿!這個SSL證書來自CloudFront ...但我們連接的域名不是 Amazon CloudFront ...騙子!」因此,我的瀏覽器不信任證書並拒絕在其上加載任何資產。我可以直接訪問它們,但它警告我說我的連接不安全,等等。

我不知道該怎麼做。

感謝您提供的任何幫助! :)

回答

1

如果您的CloudFront的分佈仍然是服務於HTTPS證書只對* .cloudfront.net是有效的,這聽起來像之一:

  1. 您沒有正確添加您的CNAME作爲備用域名從您的CloudFront分配的配置中進行分配。
  2. 您尚未將HTTPS證書應用於您的Distributions配置。

取決於它是否通過HTTP工作,聽起來像它可能是第二種情況。

+0

另請參見http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html爲了清楚起見,CloudFront需要通過IAM上傳的SSL證書/密鑰/鏈接集才能在https上前端。後端服務器的證書不會傳播出去......它不能,因爲CloudFront(與任何第7層解決方案一樣)解密請求和響應,以便它可以處理它們,並在瀏覽器上重新加密它們/或起源。 –