下面是wss://ssl.highlight.top/score/的配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
http {
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

upstream wsbackend{
server localhost:58880; # ws://ip:port
}

server {
listen 443 ssl;
server_name ssl.highlight.top;
keepalive_timeout 70;

ssl_certificate ssl.highlight.top.pem; # 下载自阿里云的免费ssl
ssl_certificate_key ssl.highlight.top.key; # 这两个文件放在和nginx.conf同一目录
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;

location /score/ {
proxy_pass http://wsbackend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
}

参考官方文档,如果不需要wss,而是ws的话,从listen行到location之间的部分都可以删去。

另外的问题就是还是没明白serverhttp的关系,另外看到mail{ server{} }之类的,还有tcp{ server{} },似乎server总是包在某一个东西下面,记得是不能独立出来的,也没找到哪里有规范进行说明。