如何使用 HTTPS 重定向具有 CNAME 记录的网站站点

How can I redirect a website site with a CNAME record using HTTPS

我继承了一个配置奇怪的网站,我正在尝试设置 SSL 证书,但没有成功。

这是初始设置。 有 3 个具有不同 URLS 的不同网站。比方说:

这三个网站都托管在同一个网络托管服务提供商(同一个帐户)上,但每个网站都有不同的根文件夹。 site1.com 具有显示网站所需的所有文件,而 site2.comsite3.com 具有通用默认文件 "under construction"。

site2.comsite3.com 的 CNAME 记录设置如下:

www.site2.com CNAME www.site1.com

www.site3.com CNAME www.site1.com

当我访问 www.site2.com 时,我能够查看与其他两个不同的站点 2 的内容。内容管理系统中使用的代码为所有 3 个站点共享,但 CMS 会查看从中加载的 URL,并根据域显示不同的布局。

到目前为止一切正常。

但是当我启用 https 并访问 site2.comsite3.com 时,我只能看到默认的 "under construction page" 而不是正确的内容。

我认为它与域名和 SSL 证书有关,所以我购买了一个包含所有 3 个域的多域 SSL 证书并将其安装在 site1.com 上,因为其他站点有点像镜像一.

即使使用多域 SSL 证书,我在访问 site2.comsite3.com.

时仍然看到 "under construction" 页面

我也尝试在 site2.comsite3.com 上安装多域,但也没有任何作用。

有谁知道为什么当我在 site2.comsite3.com 前面添加 https 时它停止工作?

此问题与 CNAME 或证书无关。问题是您的 Web 服务器的配置没有针对 site2 和 site3 的特定设置。

CNAME 只是帮助将 site2 和 site3 的 IP 地址解析为 site1 的 IP 地址。 CNAME 只是域名的 DNS 级别别名,Web 服务器不知道这一点。这意味着浏览器传输到服务器的名称仍然是 site2 或 site3,而不是 site1,因此服务器将采用 site2 或 site3 的特定配置,而不是 site1 的配置。

这意味着您需要调整您的服务器配置,以便 site1 的服务器也将用于 site2 和 site3。具体如何完成取决于您的特定 Web 服务器。由于对该服务器及其设置一无所知,因此无法对此提供进一步的帮助。