SSL handshake error: stream_socket_enable_crypto()

阿星

问题描述

wss请求的时候报错
SSL handshake error: stream_socket_enable_crypto(): SSL_R_NO_SHARED_CIPHER: no suitable shared cipher could be used. This could be because the server is missing an SSL certificate (local_cert context option)

程序代码

// 实例化 Websocket 服务
        $this->worker = new Worker($this->socket ?: $this->protocol . '://' . $this->host . ':' . $this->port, $this->context);
        $this->worker->transport = 'ssl'; // 使用 SSL 传输协议
        $this->worker->ssl = [ // 配置 SSL 证书路径
            'local_cert'                 => __DIR__.'/../../../nginx/runrise.com.cn_bundle.crt', // 也可以是crt文件
            'local_pk'                   => __DIR__.'/../../../nginx/runrise.com.cn.key',
            'verify_peer' => false, // 是否验证客户端证书(通常不需要)
//            'allow_self_signed' => true, //如果是自签名证书需要开启此选项
        ];

报错信息

SSL handshake error: stream_socket_enable_crypto(): SSL_R_NO_SHARED_CIPHER: no suitable shared cipher could be used.  This could be because the server is missing an SSL certificate (local_cert context option)
81 1 0
1个回答

jolalau

你这证书路径不对吧?检查下是否路径问题

  • 暂无评论
×
🔝