运行Bokeh服务器时与Safari失去了WebSocket连接

时间:2017-05-02 20:34:40

标签: nginx websocket safari bokeh

我正在远程服务器上设置Bokeh图,我遇到了Safari的这个问题。当我连接到网站时,情节显示,但立即,WebSocket连接自行关闭,就像浏览器已关闭一样。

当我尝试使用Chrome时,一切都很好。

这是我的反向代理配置(nginx):

server {
    listen 80 default_server;
    server_name bokeh_host;

    root /var/www/html;
    index index.nginx-debian.html;

    access_log  /srv/log/bokeh.access.log;
    error_log   /srv/log/bokeh.error.log;

    location / {

    }

    location /bokeh_plot {
        proxy_pass http://127.0.0.1:5000;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_http_version 1.1;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host:$server_port;
        proxy_buffering off;
    }

    location /static {
        alias /srv/static;
    }

}

这是我的散景命令:

bokeh serve bokeh_plot.py --port 5000 --host *.domain.com

以下是我在终端中看到的内容:

如您所见,WebSocket连接在创建后立即关闭。最后,我可以看到情节,但由于WS连接丢失,它不再是交互式的。

这与Safari有关吗?有人也见过这个bug吗?或者也许是因为我的配置?

1 个答案:

答案 0 :(得分:0)

这实际上是一个(最近的)Safari问题。似乎只有当情节太大时才会发生。

无论如何,我按照GitHub的建议用Safari Technology Preview R28试了一下,效果很好。我想我们将不得不等待下一次Safari更新。