微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

shiny的Websocket错误

我是新前端的Web应用程序开发。 我收到WebSocket连接失败,如下所示:

WebSocket connection to 'ws://127.0.0.1:7983/websocket/' Failed: Error in connection establishment: net::ERR_EMPTY_RESPONSE

我查了一下这个WebSocket错误,发现转到了下面的页面

Shiny&RStudio服务器:“WebSocket握手期间出错:意外的响应代码404

WebSocket连接失败,Nginx,nodejs和socket.io

如何将https://请求redirect到http://在Nginx中?

Nginxcaching文件只取决于文件名(而不是完整path)

Nginx服务器名称正则expression式当“主机”头有一个尾点

如何在保持相同url的同时代理Nginx请求

Nginx的权限被拒绝13与静态内容的Django

Rstudio和shiny的服务器代理设置

然后,我在Windows 7机器上下载了Nginx,并在Nginx.conf中添加了以下注释,保存并执行了runApp()。

location /rstudio/ { rewrite ^/rstudio/(.*)$ /$1 break; proxy_pass http://localhost:7983; proxy_redirect http://localhost:7983/ $scheme://$host/rstudio/; }

这似乎并没有解决这个问题。 我想我可能需要添加一些额外的东西到Nginx.conf文件或放在一个特定的目录。 请协助。 谢谢!

编辑Nginx.conf脚本如下:

location /rstudio/ { rewrite ^/rstudio/(.*)$ /$1 break; proxy_pass http://127.0.0.1:5127; proxy_redirect http://127.0.0.1:5127/ $scheme://$host/rstudio/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; }

无法使用Nginx + Prerender + Meteor设置SSL

避免Nginx解码proxy_pass上的查询参数(相当于AllowEncodedSlashes NoDecode)

如何将远程IP传递给代理服务? – Nginx

重新加载Nginxconfiguration

Chrome拒绝cachingJavascript

在同一个问题上挣扎了好几天之后,我发现问题在于防火墙阻止了websocket的工作。 我安装了Pandas Antivirus,并启用了防火墙。 当我关掉它,并使用Windows防火墙,并打开该传入的端口,然后开始工作。

希望能帮助到你

我想你忘了使用Nginx的WebSockets所需的三行代码

proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";

将它们添加到您的location /rstudio/ {}

另外,认情况下,连接将在30秒后关闭,而不进行任何活动。 解决方法

proxy_read_timeout 999999999;

WebSockets需要HTTP 1.1协议才能工作。 这3行使浏览器使用HTTP 1.1连接到网站,并将您的服务器代理为HTTP 1.1。

如果你想知道更多, 这里有一个博客文章可能有帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐