我有一个在域名(例如 site.com)上运行的网站。我还有一个附加域名(例如 sitecdn.com),它基本上指向 Amazon Cloudfront 进行交付。Amazon Cloudfront 反过来基本上从主域名(site.com)获取数据。我使用此设置主要是为了让我的 sitecdn.com 的多个子域名通过 cdn 指向资产。
主网站有 SSL 证书,我打算将所有从 CDN 提供的资产仅作为 https 链接。例如
<img src="https://img.sitecdn.com/image.jpg" />
我有点困惑我的 cdn 域是否需要 SSL。在 cloudfront 中,我可以设置允许 https 和 http 流量。
我是否需要 SSL 证书?如果是,那么我应该在哪里安装 SSL 证书,因为我没有 sitecdn.com 的服务器。
答案1
是的,你需要,而且你需要在img.sitecdn.com
服务器上使用它。无论你想在何处使用 HTTPS URL,负责为该网站提供服务的服务器都需要证书;最好是正确签名的证书。
如果您使用自签名证书,大多数浏览器都会抱怨sitecdn.com
加载https://site.com
页面时加载的元素。
如果您在 http 下提供这些元素,大多数浏览器在加载页面时都会抱怨混合安全模式https://site.com
。
编辑:从服务器云提供 HTTPS 内容是一项艰巨的任务,是的,据我所知,这需要在每台可能需要提供该服务的服务器上安装 HTTPS 密钥/证书对。如果我是你,我不会费心去做这件事,而是从服务器提供所有内容site.com
。
答案2
使用 HTTPS,Amazon CloudFront 仅支持使用cloudfront.net
分配给您的主机名。因此,无论如何您都无法使用自己的域名;https://whatever.cloudfront.net/resource.jpg
而必须使用。