C# webSokcet(ws升级wss),网页连通失败?
·
一、前言:
首先你要确认自己的证书是有效的,具体证书免费申请,证书下载:c# SLL证书,实现HTTPS、WSS(websockets)流程(超简单):-CSDN博客
二、代码细节(WebSocket Fleck库) :
1、我在网上找的办法都是什么,nginx代理转发来实现,我试了两三天了就是不行,直到!
2、ws搭建:
var server = new WebSocketServer("ws://192.168.1.125:10055");//必须本机IP
server.RestartAfterListenError = true;
server.Start(socket =>{...});
3、wss搭建(注意!!!):
var servers = new WebSocketServer("wss://192.168.1.125:10055")
{
Certificate = new X509Certificate2(@"D:\previewServer\xxx.pfx", "xxxx", X509KeyStorageFlags.Exportable | X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet),
EnabledSslProtocols = SslProtocols.Tls12,
RestartAfterListenError = true
};
//Certificate = new X509Certificate2(@"证书文件", "证书密码")
//EnabledSslProtocols = SslProtocols.Tls12 //重中之重,指定tls协议(否则连接失败)
4、ws\wss调用方式:
webSocket: ws://www.xxx.com:10055
webSockets: wss://www.xxx.com:10055
5、这样wss就已经搭建好了,就这么简单,你敢信,我就是因为没加指定TLS协议卡我三四天,又是试Nginx代理又是改端口;
三、总结:
网页访问Wss服务端需要指定TLS协议,我遇到的问题就是客户端程序可以连通,但是网页访问失败,TLS协议的指定为重中之重;
四、附加:
1、协议有效性判断(注意在OpenSSL控制台执行):
openssl x509 -in 证书文件绝对地址 -text -noout
//输出一大串即为证书有效,可以发给AI看详细信息;
举例:openssl x509 -in E:/www.xxx.com.pfx -text -noout
证书文件后缀:.pfx(IIS)、.pem(Nginx)
2、证书申请、下载:
更多推荐



所有评论(0)