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;
}
上一篇:nginx location rewrite常用详解


下一篇:通过Charles设置App页面返回值的显示,检查数字是否异常显示