将网络套接字请求从 Nginx 传递到 uWSGI 服务器
Passing web socket requests from Nginx to uWSGI server
我在服务器 a
(端口 8000)上安装了 Nginx 运行,在服务器 b
(端口 8001)上安装了 uWSGI
运行。 b
已经在 ws://b:8001/s
提供网络套接字。我想将 a
配置为反向代理,同时允许在 ws://a:8000/s
.
访问此网络套接字
我对 a
将原始 HTTP 请求中继到 b
和 b
启动协议升级(如在没有代理的情况下也会发生),而不是在 a
启动协议升级时发生,就像在 this 示例中发生的那样。
什么 Nginx location
块允许我这样做?
事实证明这足够直截了当。以下 location
块显然可以解决问题(对于 Nginx 1.10.3 和 uWSGI 2.0.17.1):
location /s {
proxy_pass http://b:8001/s;
proxy_http_version 1.1;
}
我在服务器 a
(端口 8000)上安装了 Nginx 运行,在服务器 b
(端口 8001)上安装了 uWSGI
运行。 b
已经在 ws://b:8001/s
提供网络套接字。我想将 a
配置为反向代理,同时允许在 ws://a:8000/s
.
我对 a
将原始 HTTP 请求中继到 b
和 b
启动协议升级(如在没有代理的情况下也会发生),而不是在 a
启动协议升级时发生,就像在 this 示例中发生的那样。
什么 Nginx location
块允许我这样做?
事实证明这足够直截了当。以下 location
块显然可以解决问题(对于 Nginx 1.10.3 和 uWSGI 2.0.17.1):
location /s {
proxy_pass http://b:8001/s;
proxy_http_version 1.1;
}