在一些场景中时常遇到一些问题,就是外网访问的主机只负责分流,很多业务是其他不同的机器或者容器承载的,那么这个时候就需要进行分流,不得不使用我常用的nginx了
直接上配置文件:

# nginx.conf
stream {
    map $ssl_preread_server_name $backend_name {
        myserver.com myserver;
        api.myserver.com api;
        cdn.myserver.com cdn;
        default bad;
    }

    upstream myserver {
        server 127.0.0.1:666;
    }
    
    upstream api {
        server 127.0.0.1:777;
    }

    upstream cdn {
        server 127.0.0.1:888;
    }

    upstream bad {
        server 127.0.0.1:400;
    }

    server {
        listen 443 reuseport;
        listen [::]:443 reuseport;
        proxy_pass $backend_name;
        ssl_preread on;
    }
}

http {
 ...
 ...
 ...
}