nginx配置websocket转发功能

之前配置好了服务器上面的linux-dash和jupyter notebook,然后想着每次都是要输入ip和端口很麻烦,于是想给它配置个网址,然后用Nginx转发过去。

前面都很顺利,DNS解析增加记录,配置Nginx。

但是遇到了奇怪的问题,

linux-dash迟迟不显示系统状态,重启了N遍还是没办法,

jupyter能登录但是没办法连接到内核,显示kernel error,点开就是not found。

找了很久的问题,最后猜测是nginx的问题,然后发现他们都有个共同点那就是用了websocket进行通信,网上搜了一下配置Nginx的websocket转发的方法。按照网上的教程配置,重启Nginx,终于可以正常使用了。

配置的核心就是proxy开头的那几个设置项,把header需要设置一下才能连接到。

server {

        listen 80;

        server_name aaa.bbb.com; # 你的网址名称

        # 转发websocket需要的设置

        proxy_set_header X-Real_IP $remote_addr;

        proxy_set_header Host $host;

        proxy_set_header X_Forward_For $proxy_add_x_forwarded_for;

        proxy_http_version 1.1;

        proxy_set_header Upgrade $http_upgrade;

        proxy_set_header Connection 'upgrade';

        # 所有请求都转发

        location / {

                proxy_pass http://192.168.1.184:8000/;

        }

}

你可能感兴趣的:(nginx配置websocket转发功能)