gpt4 book ai didi

php - 在PHP上具有stream_socket_accept的OpenSSL

转载 作者:行者123 更新时间:2023-12-03 11:53:10 27 4
gpt4 key购买 nike

我正在尝试在套接字客户端服务器应用程序中使用SSL。
由于某种原因,我得到以下响应:

Warning: stream_socket_enable_crypto(): Unable to set private key file

我可以读写文件。

我使用以下代码来检索数据:
$socket = stream_socket_accept($this->server);
stream_set_blocking($socket, true);
stream_socket_enable_crypto($socket, true, STREAM_CRYPTO_METHOD_SSLv3_SERVER);
$data = fread($socket, 1024);
stream_set_blocking($socket, false);
fclose($socket);

这是我的服务器初始化:
$this->server = stream_socket_server(self::SERVER_ADDRESS, $errno, $errstr, STREAM_SERVER_BIND | STREAM_SERVER_LISTEN, $this->ssl->getStreamContextForSSL());
stream_socket_enable_crypto($this->server, false);

语境:
public function getStreamContextForSSL() {
$context = stream_context_create();
$this->setContextSSLOptions($context, array(
'local_cert' => self::PEM_FILE,
'passphrase' => self::PEM_PASSPHRASE,
'allow_self_signed' => true,
'verify_peer' => false
));
return $context;
}

最佳答案

一定要检查您的私钥是否有效,因为OpenSSL的php实现不会告诉您它是否无效。

关于php - 在PHP上具有stream_socket_accept的OpenSSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31246424/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com