按照手冊及網(wǎng)上教程,實現(xiàn)了安裝wss,大部分客戶端都能夠正常連接,會有個別客戶端連接報錯
Error in connection establishment: net::ERR_CONNECTION_CLOSED
服務器用的阿里云,環(huán)境 寶塔
php7.2+nginx 證書是阿里云申請的
項目用的是 tp5.0
貼一下站點配置
web(vue)端連接失敗會報錯,沒有走到onConnect方法
Error in connection establishment: net::ERR_CONNECTION_CLOSED
客戶端連接上收不到信息,因為連接的時候有對當前client_id添加定時器,后臺可以查到有用戶client_id和定時器id,但是客戶端收不到消息,并且客戶端也發(fā)送不了認證消息,會一直10秒重連
onConnect代碼
客戶端連接之后并收不到發(fā)送的 連接成功,服務端也收不到認證消息,然后反復10秒重連
大部分用戶是正常的,總會有三四個用戶有這種情況,剛使用GatewayWorker不久,一路看帖搭建環(huán)境到使用,還有很多不了解的,希望大佬幫忙解答!
直接ws連30000試下有沒有問題,如果沒有問題說明是nginx配置有問題。
按照手冊配置nginx試下呢?
http://doc.workerman.net/faq/secure-websocket-server.html
location /wss
{
proxy_pass http://127.0.0.1:30000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header X-Real-IP $remote_addr;
}
手冊里 location是 /wss
,不是 /
,而且沒有 if (!-e $request_filename) { ...}
。
客戶端連的時候連 wss://域名.com/wss
,注意地址末尾有個 /wss
。
好的,感謝大佬!
之前我配置的時候也是 location /wss{....}
因為訪問的時候地址沒加 /wss,一直訪問不了,所以我寫在了 location /后面
if (!-e $request_filename) { ...},這一坨我是tp框架的偽靜態(tài)
原來 / 后面就是要訪問的配置文件,現(xiàn)在我懂了,之前沒有訪問到對應的配置信息
我應該理解你的意思了,下此再遇到連不上的我調試試一下