首页
下载
文档
社区
视频
捐赠
源代码
赞助商
AOT 编译器
AI 助理
商业产品
PHP AOT 原生编译器
Swoole-Compiler 代码加密器
CRMEB 新零售社交电商系统
登录
注册
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
求救:swoole使用WebSocket,加载ssl证书后,客户端无法用wss连接,但是用ws可以
下面是我的代码片段,ssl_key_file和ssl_cert_file文件路径均存在,并且有权限访问 客户端无法用**wss**连接,但是用**ws**可以 望高人指点一下,谢谢 {{{ Swoole\Config::$debug = true; Swoole\Error::$echo_html = false; $AppSvr = new WebSocket(); $enable_ssl = true; $server = Swoole\Network\Server::autoCreate($LISTEN_IP, $PORT_WEBSOCKET, $enable_ssl); $server->setProtocol($AppSvr); $server->daemonize(); $server->run(array( 'worker_num' => 1, 'ssl_key_file' => '/home/ssl/key.key', 'ssl_cert_file' => '/home/ssl/cert.crt', 'heartbeat_check_interval' => 40, 'heartbeat_idle_time' => 300, 'log_file' => '/var/log/swoole.log' )); }}}
发布于10年前 · 5 次浏览 · 来自
提问
平
平淡之人
下面是我的代码片段,ssl_key_file和ssl_cert_file文件路径均存在,并且有权限访问 客户端无法用**wss**连接,但是用**ws**可以 望高人指点一下,谢谢 {{{ Swoole\Config::$debug = true; Swoole\Error::$echo_html = false; $AppSvr = new WebSocket(); $enable_ssl = true; $server = Swoole\Network\Server::autoCreate($LISTEN_IP, $PORT_WEBSOCKET, $enable_ssl); $server->setProtocol($AppSvr); $server->daemonize(); $server->run(array( 'worker_num' => 1, 'ssl_key_file' => '/home/ssl/key.key', 'ssl_cert_file' => '/home/ssl/cert.crt', 'heartbeat_check_interval' => 40, 'heartbeat_idle_time' => 300, 'log_file' => '/var/log/swoole.log' )); }}}
赞
0
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
登录
后参与评论
评论
2016-08-27
淡
淡淡风
首先你确认一下你的swoole是否启用了openssl,是否在编译时加入了--enable-openssl的支持。
赞
0
回复
2016-08-27
他
他乡遇故知
您好,我重新编译安装了swoole,加入了--enable-openssl的支持 现在貌似可以连接了,但是会报如下错误: **WebSocket connection to 'wss://x.x.x.x:8080/' failed: WebSocket opening handshake was canceled** 烦请再帮忙看看这个是什么原因导致的,谢谢
赞
0
回复
2017-01-11
!
!
SSL证书是认证的吗?
赞
0
回复
2017-03-01
冬
冬来
我也遇到这个问题
赞
0
回复
2017-03-01
海
海兵大侠
在safari下可以,在chrome下不能连接,应该是证书部署的问题
赞
0
回复
2017-05-13
[
[28|24|猫耳摇摆|1]
SSL证书不可信,所以Chrome会自动切断连接。
赞
0
回复
2017-09-03
Y
Yolanda
我也碰到这个问题,不过是只有一个页面这样,其他页面都正常
赞
0
回复
2018-03-07
新
新用户(手机注册)
因为wss浏览器拿不到证书,简单的做法:在执行wss之前,加上https://...访问一次,让证书认证过就可以了。 或者用顶级域名做一个证书(收费哦),这样所有子域名都用同一个证书。
赞
0
回复
2018-03-31
p
php小奶狗
使用wss是不是需要你的socket服务器端是https的
赞
0
回复
2018-05-12
人
人在江湖飘
WebSocket connection to 'wss://x.x.x.x:8080/' failed: WebSocket opening handshake was canceled ------ - 上面的原因就是因为你开启了 ssl 之后,那么wss连接的时候就必须是你创建 ssl 时签证的域名才可以(wss://127.0.0.1:8080 是不行的), 应该是 wss://test.com:8080 才可以。
赞
0
回复