服務(wù)端 workerman 正常啟動(dòng)了 客戶端連接就報(bào)這個(gè)錯(cuò)誤是啥原因 求解
你服務(wù)端是wss,但是有客戶端用的ws在連你的wss服務(wù),所以會(huì)有這個(gè)報(bào)錯(cuò)。客戶端應(yīng)該用wss去連你的wss服務(wù)才對(duì)。
發(fā)生這種情況一般是之前服務(wù)區(qū)端監(jiān)聽(tīng)的ws,客戶端也用ws去連,沒(méi)問(wèn)題。但是你突然將ws端口改成了wss,那么之前的客戶端可能有斷線重連功能,依然用ws去連,那么就有這個(gè)報(bào)錯(cuò)了。這個(gè)報(bào)錯(cuò)可以忽略,不影響正常的wss客戶端。如果你不想看到它,就換個(gè)端口。
我換了一個(gè)端口 開(kāi)啟的服務(wù) 結(jié)果客戶端連接就換了一個(gè)報(bào)錯(cuò)提示
SSL handshake error: stream_socket_enable_crypto(): SSL_R_NO_SHARED_CIPHER: no suitable shared cipher could be used. This could be because the server is missing an SSL certificate (local_cert context option)
按照手冊(cè)來(lái),證書(shū)用絕對(duì)路徑,并保證證書(shū)文件存在。另外注意把 new Worker 時(shí)把$context 傳遞進(jìn)去