node.js-WebSocket与“ ws://…/socket.io/”的连接失败:WebSocket握手时出错:n
我正在使用nginx并代理到我的应用程序,该应用程序在node.js上使用socket.io进行websocket连接. 通过域访问应用程序时出现上述错误. 我已根据https://github.com/socketio/socket.io/issues/1942配置了nginx以确保将websocket正确代理到node.js后端. 我的nginx配置如下:
在我的react客户端中,我以这种方式启动websocket连接:
任何建议表示赞赏! 编辑1: 经过更多调查. 我的服务器设置如下: 可从互联网访问的域名:web-face.domain.com 当我从Intranet访问该应用程序时,它可以正常工作,但从Internet访问时出现错误. 我怀疑这是由于使用this.socket = io()创建了套接字,该套接字与当前域建立了套接字连接. 由于节点中的套接字正在监听ws://internal.domain.com,因此当通过web-face.domain.com连接时,会创建错误的套接字ws://web-face.domain.com. 所以现在的问题是,当从其他域访问时,如何创建内部域的套接字? 编辑2: 我添加了app.set(‘trust proxy’,true)来配置Express接受代理连接,但是它仍然无法正常工作. 最佳答案 事实证明,我无法控制服务器前面还有另一个反向代理.将我的服务器设置更改为直接面向互联网,并且可以正常工作. (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 为什么proxy_set_header主机$host;不再在nginx 1.8.0中工作
- python – 在Nginx反向代理POST请求后面的CherryPy被破坏/截
- nginx与javascript文件过期(由PHP动态生成)
- django – 如何在uWSGI中配置允许的GET参数字符数?
- nginx-为什么我不能在Kubernetes上水平扩展简单的HTTP / 2服
- ruby – Gitlab配置问题:: NGINX Unicorn端口冲突
- 正则表达式 – nginx匹配位置中的特定单词
- 如何通过负载平衡流式传输点播视频
- nginx – 阻止通过HTTPS直接访问Web服务器IP
- 将nginx.conf添加到Kubernetes集群
- nginx – 拒绝所有被另一个位置块覆盖
- 在Nginx中自动版本化CSS / JS
- 在location {}块中指定nginx的ssl_certificate
- apache-2.2 – nginx重定向回remote_addr IP
- nginx 反向代理 502 Bad Gateway
- ubuntu-除非root用户,否则uWSGI Emperor权限被拒
- ruby-on-rails-使用Nginx和Puma在Ruby on Rails应
- Nginx反向代理到另一个服务静态文件的nginx服务器
- ruby-on-rails-如何使Nginx了解Rails代码更改
- ruby-on-rails-4-Rails域约束(服务于多个域)