使用Caddy的Web套接字反向代理(WSS)

Sha*_*uri 5 web-services websocket caddy caddyfile

Project GitHub URL

我刚开始使用球童.我做了一个简单的聊天应用程序,我正在使用球童服务.
WebSockets由应用程序在ws而不是wss上提供,类似于应用程序在HTTP上而不是https上提供应用程序的方式.我正在尝试使用caddy保护协议,并已成功完成https的协议.由于我在使用https时无法使用ws,因此我还需要在wss上提供WebSockets.我在文档中找不到一种方法,我可以找到如何将代理wss反转为ws,就像我使用https到http一样.

我尝试了什么

your.tld.com {
    proxy / 0.0.0.0:8266 {
        transparent
        websocket
    }
}
Run Code Online (Sandbox Code Playgroud)

2)

your.tld.com {
    proxy / 0.0.0.0:8266 {
        transparent
    }
   proxy /ws 0.0.0.0:8266 {
        transparent
    }
}
Run Code Online (Sandbox Code Playgroud)

3)

your.tld.com {
    proxy / 0.0.0.0:8266 {
        transparent
    }
   proxy /ws 0.0.0.0:8266/ws {
        transparent
   }
}
Run Code Online (Sandbox Code Playgroud)

以上的attemots没有用.希望能在这里找到解决方案.

pap*_*pey 4

我的配置文件有这样的内容:

proxy /api/v1/streaming http://localhost:4000 {
    websocket
} 
Run Code Online (Sandbox Code Playgroud)

所以对你来说它将是这样的:

your.tld.com {
   proxy / 0.0.0.0:8266 {
        transparent
   }
   proxy /ws http://0.0.0.0:8266 {
        websocket
   }
}
Run Code Online (Sandbox Code Playgroud)

  • 你好@papey,介意分享和更新这个答案的 Caddy V2 等效代码吗?这对未来的访客很有用 =) (2认同)