ssl-使用Nginx将通配符子域重定向到另一个顶级域

我们有一堆通配符子域(_foo.example.com,bar.example.com等),当通过HTTPS访问时,它们应重定向到安全域中的等效子域.

一些例子:

> https://foo.example.com => https://foo.secure.com
> https://foo.example.com/some/path => https://bar.secure.com/some/path
> https://bar.example.com => https://bar.secure.com

我认为可以通过nginx重写来实现,但是我不确定语法.这是我正在尝试的:

server {
    listen        443;
    server_name   *.example.com;

    rewrite       ^(.*)   https://*.secure.com$1 permanent;
}

这显然是行不通的,因为我没有捕获传入的子域并在重写中使用它.
最佳答案
尝试以下操作(未经测试):

server {
    listen 80;
    listen 443 default ssl;

    server_name "~^(?<name>\w\d+)\.example\.com$";

    rewrite ^(.*) https://$name.secure.com$1 permanent;
}

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。