使用SLB的80端口http转发到后端tomcat服务器10006端口上,websocket也是走同样的端口,但ws在连接时报400 bad request错误。
说明:之前使用SLB->nginx->tomcat这种方式的时候也遇到过这个问题,后来在nginx上做了配置后好了。这次是去掉了nginx直接SLB->tocmat后就不行了。
websocket协议通信首先会通过http发起一个connection:upgrade的请求,这个时候如果后端服务器不响应101,返回200的话,就会导致ws客户端报400,nginx里面可以方便配置connection:upgrade升级协议,去掉以后应该是tomcat没有配置相应策略导致的
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。