2017-04-06 22 views
0

不HAProxy的工作考虑我HAProxy配置在这里:的WebSocket在TCP模式

global 
    chroot /var/lib/haproxy 
    user haproxy 
    group haproxy 

defaults 
    timeout connect 10s 
    timeout client 50s 
    timeout server 50s 

frontend fe_https_tomcat 
    mode tcp 
    bind *:443 ssl crt /path/cert.pem alpn h2,http/1.1 
    default_backend be_tomcat 

backend be_tomcat 
    mode tcp 
    server localhost localhost:8081 check 

我的问题是,WebSocket的似乎并没有打通。我的猜测是,在TCP模式下,一切都会通过。看起来它不是...... :-)

当WebSocket连接建立时,服务器响应错误403

注意与以下http模式安装,WebSocket的只是工作:

frontend fe_http_8080 
    mode http 
    bind *:8080 
    default_backend be_tomcat_8080 

backend be_tomcat_8080 
    mode http 
    server localhost localhost:8081 check 

请注意,我需要TCP模式有HTTP/2的工作。

回答

0

这个问题最后与HAProxy无关,而是与Spring中的WebSocket设置有关。 固定它:

-registry.addHandler(webSocketHandler, "/ws"); 
+registry.addHandler(webSocketHandler, "/ws").setAllowedOrigins("*"); 
相关问题