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 错误
这个只说明
SSL_do_handshake
执行了两次,但实际上是同一个连接。bad SSL Client
说明客户端使用的是非SSL
协议。