easyswoole报错:failed: Error during WebSocket handshake: Unexpected response code: 200
WebSocket connection to \’ws://www.xxxx.com/xxx/xx\’ failed: Error during WebSocket handshake: Unexpected response code: 200
网站绑定到了服务器,直接在服务器上访问webSocket服务是可行的,但是当我用外网访问时,就报错了,看了网上一堆评论,发现很多人都遇到这个问题都没有解决,现在我的这个问题解决了,虽然是个小问题,但是没解决之前还是蛮头疼的,所以分享给跟我一样入坑的小伙伴:
其实就是你config里面有个配置写错了:
\'MAIN_SERVER\'=>[
\'HOST\'=>\'0.0.0.0\',
\'PORT\'=>9501,
\'SERVER_TYPE\'=>\EasySwoole\Core\Swoole\ServerManager::TYPE_WEB_SERVER,
\'SOCK_TYPE\'=>SWOOLE_TCP,//该配置项当为SERVER_TYPE值为TYPE_SERVER时有效
\'RUN_MODEL\'=>SWOOLE_PROCESS,
\'SETTING\'=>[
\'task_worker_num\' => 1, //异步任务进程
\'task_max_request\'=>5,
\'max_request\'=>2000,//强烈建议设置此配置项
\'worker_num\'=>1
],
],
把 改成\'SERVER_TYPE\'=>\EasySwoole\Core\Swoole\ServerManager::TYPE_WEB_SOCKET_SERVER,就好了。加油吧!