回答編集履歴
2
訂正
answer
CHANGED
@@ -1,26 +1,26 @@
|
|
1
1
|
[http://nginx.org/en/docs/http/websocket.html](http://nginx.org/en/docs/http/websocket.html) によると、`Upgrade`, `Connection` ヘッダが必要とのことです。
|
2
2
|
|
3
|
+
**(2017/06/03 18:16) 訂正**
|
4
|
+
ごめんなさい、`stream {}` ではなく、`http {}` の場合の設定でした。
|
5
|
+
クライアントからは `https://` でアクセスしています。
|
6
|
+
|
3
7
|
```
|
4
|
-
|
8
|
+
http {
|
5
|
-
upstream backend {
|
6
|
-
server 127.0.0.1:9090;
|
7
|
-
|
9
|
+
(略)
|
8
|
-
|
9
10
|
server {
|
10
11
|
listen 443 ssl;
|
11
12
|
ssl_certificate /root/SSL/server.crt;
|
12
13
|
ssl_certificate_key /root/SSL/XXXX.com.2017.key;
|
13
14
|
proxy_connect_timeout 10s;
|
14
|
-
proxy_timeout 10s;
|
15
15
|
|
16
|
-
#### location / ####
|
17
16
|
location / {
|
18
|
-
proxy_pass
|
17
|
+
proxy_pass http://127.0.0.1:9090;
|
19
|
-
#### 下記 3行を追加 ####
|
20
18
|
proxy_http_version 1.1;
|
21
19
|
proxy_set_header Upgrade $http_upgrade;
|
22
20
|
proxy_set_header Connection "upgrade";
|
23
21
|
}
|
24
22
|
}
|
25
23
|
}
|
26
|
-
```
|
24
|
+
```
|
25
|
+
|
26
|
+
`stream {}` の場合、質問文の設定で、クライアントから `https://` でアクセスすると、Upgrade して WebSocket で通信できませんでしょうか。
|
1
修正: location の設定が必要
answer
CHANGED
@@ -12,11 +12,15 @@
|
|
12
12
|
ssl_certificate_key /root/SSL/XXXX.com.2017.key;
|
13
13
|
proxy_connect_timeout 10s;
|
14
14
|
proxy_timeout 10s;
|
15
|
+
|
16
|
+
#### location / ####
|
17
|
+
location / {
|
15
|
-
|
18
|
+
proxy_pass backend;
|
16
|
-
|
19
|
+
#### 下記 3行を追加 ####
|
17
|
-
|
20
|
+
proxy_http_version 1.1;
|
18
|
-
|
21
|
+
proxy_set_header Upgrade $http_upgrade;
|
19
|
-
|
22
|
+
proxy_set_header Connection "upgrade";
|
23
|
+
}
|
20
24
|
}
|
21
25
|
}
|
22
26
|
```
|