将SSL重定向到另一个SSL



我有几个https://*.rest-service.mydomain.com。随着服务数量的增加,我觉得管理SSL证书的成本很高。我为*.mydomain.com买了一个通配符证书。

新增的服务被放置在mydomain.com下,使用新的通配符证书,并且工作良好。然而,一如既往,遗留问题是一个问题。

我仍然有很多到https://*.rest-service.mydomain.com的https流量,它的旧证书即将过期。

在这种情况下,是否有任何好的方法来重定向遗留的https流量到新的?

由于客户端仍然只知道遗留端点https://*.rest-service.mydomain.com,我可以将客户端重定向到新服务器https://*.mydomain.com并处理请求吗?

我使用nginx作为web服务器,使用ELB作为负载均衡器。

…旧证书即将过期

虽然您可以从ssl重定向到ssl(参见另一个答案),但您仍然需要为您重定向的主机提供有效的证书。这意味着一旦旧证书过期,重定向将停止工作(或至少导致证书验证错误)。要解决这个问题,您需要更新证书。

除此之外,您必须确保服务实际上可以处理重定向。虽然浏览器以透明的方式为用户处理重定向,但对于使用REST API的应用程序来说,这是不必要的。它们可能希望直接获得响应,而不是必须遵循重定向并重新提交REST请求的重定向。

试试这个regexp-ed服务器:

server {
  server_name  ~^(?P<subdomain>.+).rest-service.mydomain.com$;
  listen 443 ssl;
  return 301 https://$subdomain.mydomain.com$request_uri;
}

相关内容

最新更新