直接上配置文件:
stream {
map $ssl_preread_server_name $name {
www.example.com home; # Home Page
default defaultpage;
}
upstream home {
server 127.0.0.1:44301;
}
upstream defaultpage {
server 127.0.0.1:44300;
}
server {
listen 443 reuseport;
listen [::]:443 reuseport;
proxy_pass $name;
ssl_preread on;
}
}
通过 NGINX 的 stream ,使用 map 做 SNI ,随后设置上游 upstream 服务器(可以设置多个做负载均衡)即可。
对于上游内的服务器 server ,可以是 NGINX 不同配置文件内的服务器,也可以直接写内部服务。
map 内的 default 用于指定当所有 $ssl_preread_server_name 都匹配不到时的默认服务器。reuseport 表示对监听的端口进行复用,ssl_preread 用于开启 ssl 预读。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.