我是新前端的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请求
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
Chrome拒绝cachingJavascript
在同一个问题上挣扎了好几天之后,我发现问题在于防火墙阻止了websocket的工作。 我安装了Pandas Antivirus,并启用了防火墙。 当我关掉它,并使用Windows防火墙,并打开该传入的端口,然后开始工作。
希望能帮助到你
我想你忘了使用Nginx的WebSockets所需的三行代码:
proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";
另外,默认情况下,连接将在30秒后关闭,而不进行任何活动。 解决方法:
proxy_read_timeout 999999999;
WebSockets需要HTTP 1.1协议才能工作。 这3行使浏览器使用HTTP 1.1连接到网站,并将您的服务器代理为HTTP 1.1。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。