如何让子域名与域名一起在 SSL 上运行

如何让子域名与域名一起在 SSL 上运行

我已经为我的网站购买了通配符 SSL 证书,比如说 www.example.com

我在 AWS 托管上使用 ubuntu 14.04 服务器,并使用 apache 2.4。我的域名是从 godaddy 预订的。

我希望我的两个文件夹 js 和 css 显示为子域,即。。js.example.com and css.example.com以便在页面加载时,来自 css 和 js 文件夹的所有文件加载速度更快。

我已成功启用 apache 中的 makingcss.example.com和设置js.example.com。此外,我还为我的网站配置了 SSL 证书并启用了 https 即。https://www.example.com

现在的问题是,我无法为我的 js 和 css 子域设置 ssl 或安全 vhost。

现在当我打开我的网站https://www.example.com,控制台中出现警告,指出 js 和 css 文件的来源不安全。如何修复此问题?

答案1

就目前情况而言,你不能。

您的证书(我假设)适用于 www.example.com;不适用于 js.example.com、css.example.com 或还要别的吗.example.com。

证书适用于任何事物.example.com 是通配符证书,其成本更高。

另一种方法是将主题备用名称 (SAN) 添加到您的证书中以覆盖 js.example.com 和 css.example.com,但您必须在请求阶段执行此操作 - 您不能事后执行此操作。很有可能,这也需要付费。

因此,您的选择是购买替换证书,或者将您的 css 和 js 移动到您网站的子目录中,以便可以作为https://www.example.com/csshttps://www.example.com/js使用您当前的证书。

但是,如果您购买了通配符证书或涵盖所有不同域的 SAN 证书并且仍然出现错误,那么问题很可能出在 Apache 上。

您需要确保 ccs 和 js 的 Apache 子域也使用 https。如果它们使用 http,您将收到您所述的警告。

相关内容