为什么swoole的SSL连接,服务端会被连接两次?

新手上路,请多包涵

php代码使用的是swoole源代码examples里的ssl文件夹的server.php和client.php,没有用浏览器Chrome。
在src/protocol/ssl.c代码的第659行
int n = SSL_do_handshake(conn->ssl);
后加一句
swWarn("SSL do handshake 10 -- %d", n);
运行结果:
[2019-02-26 09:03:50 *8362.0] WARNING swSSL_accept: SSL do handshake 10 -- -1
[2019-02-26 09:03:50 *8362.0] WARNING swSSL_accept: SSL do handshake 10 -- 1
从结果可以看到 swSSL_accept 被调用两次,一次 -1 失败,一次 1 成功。
这导致在有些地方使用,连接不成功,报 bad SSL client 错误

阅读 3.2k
1 个回答

这个只说明SSL_do_handshake执行了两次,但实际上是同一个连接。

bad SSL Client 说明客户端使用的是非SSL协议。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题