-
Notifications
You must be signed in to change notification settings - Fork 3.9k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
升级到1.8.10后ws访问404 #3222
Comments
应该是新版服务端要求 host match |
emmm 这里该不该要求match还是有点伤脑筋呢 |
我是抄了 httpupgrade ;) |
我之前以为服务端应该不会有人加的() |
"headers": { 你服务端有这个,10版本要求客户端也要有对应的,会服务端会校验,解决方法去了就是。 |
clash客户端配置header了,但不行。好吧,最后ng上强制指定host可以了,可能是ng这里header被重写了? |
不用clash/c meta不清楚和10版本兼容怎样了。 |
This comment was marked as off-topic.
This comment was marked as off-topic.
如果套了cf 的情况下 取消host 会连不上……感觉整个机制有点鸡肋 |
自Xray 1.8.10 开始,websocket 域名验证的方式是错误的。如果服务器使用不是默认端口,按照HTTP规定应该在Host里发送端口。如果客户端发送了端口,服务端则直接报错。 |
建议使用 net.SplitHostPort 处理 request.Host,进行 host 比较。 按照规范域名应该使用小写字母。 如果使用 strings.Contains, 服务端设置 www.example.com, |
Done b8c0768 |
请问ng上如何强制指定host? 能否给个示例参考一下? 謝謝 |
proxy_set_header Host $host; |
问题现象:服务端从1.8.7升级到1.8.10后(配置不变动),客户端(clash)访问服务端ng响应404(使用ws),降级回到1.8.7版本后正常。日志中没有其他报错。
服务端配置:
The text was updated successfully, but these errors were encountered: