允许websocket的Traefik配置
我有一个由以下服务组成的应用程序:允许websocket的Traefik配置,websocket,proxy,traefik,Websocket,Proxy,Traefik,我有一个由以下服务组成的应用程序: tls终止(基于https门户) 反向代理(nginx) 其他服务(web、api、wss等) 所有的交通都是这样的: https门户->nginx->其他服务 我正在用Traefik替换https门户,但我无法使websocket正确通过 下面是我的docker-compose.yml文件的摘录。到达Traefik的流量被转发到反向代理的专用端口。这一个将执行几个检查,然后将请求转发到相应的服务(api、web前端、websocket服务器等) 当web
- tls终止(基于https门户)
- 反向代理(nginx)
- 其他服务(web、api、wss等)
traefik_1 | time="2017-08-02T13:55:05Z" level=warning msg="Error while upgrading connection : websocket: 'Origin' header value not allowed"
我不确定我在这里遗漏了什么,因为这是通过https门户正确传递的。Traefik中是否需要其他选项?WebSocket不需要其他配置
traefik.wss.protocol=http
或traefik.wss.protocol=https
WebSocket在1.3.2之后和1.3.8之前有一个bug
我建议您使用1.4.0或至少1.3.8有趣,我不确定是否有答案,但我将traefik作为反向代理运行,而不仅仅是https门户,我的WebSocket在traefik中没有任何附加配置。虽然我没有在docker compose中定义我的服务的端口,只是使用nginx来服务静态内容。不确定这是否真的有帮助。。。但我知道这在某种程度上是可能的。希望有人能给出答案,但如果您在这里没有得到答案,那么在Traefik的github页面上询问可能是值得的。祝你好运你的traefik版本是什么?谢谢@ArthurWeborg。我使用的是1.3.4,但我还没有尝试使用1.3.5
traefik_1 | time="2017-08-02T13:55:05Z" level=warning msg="Error while upgrading connection : websocket: 'Origin' header value not allowed"