如何将所有 HTTP 请求重定向到一个主机名,并将 HTTPS 重定向到另一个主机名?

如何将所有 HTTP 请求重定向到一个主机名,并将 HTTPS 重定向到另一个主机名?

我们的实验室对一些域名有部分控制权,从我们的“官方”域名example-lab.org到我们大学的几个子域名(example.school.edu)。我们正在尝试获取 SSL 证书以允许加密,因为我们的网站有一部分内部部分在 Django 和 Apache 上运行。

由于我们的官方域名实际上是第三方所有,因此获取证书非常困难。不过,我们的学校子域名确实有一个证书。

我如何设置 Django/Apache 来重写(这是正确的术语吗?)对我们所需域名的 HTTP 请求,以及对带有证书的实用名称的 HTTPS 请求?

答案1

我对此持怀疑态度,因为我认为您需要使用域 example-lab.org 的证书建立 https 连接,这听起来像是不匹配或缺失的证书。如果没有有效的证书,这将无法工作。

换句话说:如果你进来https://mysite.example-lab.org/(您没有证书的网站),那么您必须在重定向到之前提供证书https://mysite.school.edu会发生这种情况。简而言之,从 https 进行重定向需要与您要重定向的站点建立有效且已建立的 https 连接,如果没有两个站点的证书,这是不可能的。

答案2

Redirect / https://www.schooldomain.edu/

如果您想了解更多详细信息,请选择您最喜欢的搜索引擎并搜索“apache 将 http 重定向到 https”。那里有成千上万个示例。其中大多数将被编写为重定向http://www.example.comhttps://www.example.com/,但您的需求是一样的。只需重定向到不同的 URL。

相关内容