我尝试使用扳手设置安全的websocket。 我创建了一个自动签名证书并生成了一个.pem文件。我尝试了示例应用程序" Echo",似乎在ssl的代码中包含问题。这是我的代码:
require_once 'D:\wamp\www\PrivateChat\lib\SplClassLoader.php';
$classLoader = new SplClassLoader("Wrench", "D:\wamp\www\PrivateChat\lib\\");
$classLoader->register();
use Wrench\BasicServer;
$server = new \Wrench\Server('wss://localhost:12345', array(
'connection_manager_options' => array(
'socket_master_options' => array(
'server_ssl_cert_file' => 'D:\wamp\www\PrivateChat\cert\certificat.pem',
'server_ssl_passphrase' => 'xavier2014epfctfe',
'server_ssl_allow_self_signed' => true,
'server_ssl_verify_peer' => false,
),
)
));
$server->registerApplication('echo', new Wrench\Application\EchoApplication());
$server->run();
客户端JS:
websocket = new WebSocket("wss://localhost:12345/echo");
websocket.onopen = function(ev) {
alert('Connected');
};
你知道我怎么解决这个问题吗?
错误:
* PHP警告:stream_socket_accept():无法在第87行的lib \ Wrench \ Socket \ ServerSocket.php中创建SSL句柄
* PHP警告:socket_last_error()期望参数1是资源,布尔gi 在第90行的lib \ Wrench \ Socket \ ServerSocket.php中
编辑:当stream_socket_accept尝试接受连接时,我得到的第一个错误是ssl处理程序。 我以为我无法正确使用它,你能帮帮我吗?