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

前端之家收集整理的这篇文章主要介绍了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/532198.html

猜你在找的Nginx相关文章