请教一下,webman/gateway-worker插件里如何为websocket服务启用ssl?
在主websockets文件中(start_gateway.php),加入配置: require_once __DIR__ . '/../../vendor/autoload.php'; $context = array( // 更多ssl选项请参考手册 http://php.net/manual/zh/context.ssl.php 'ssl' => array( // 请使用绝对路径 'local_cert' => '/www/wwwroot/xx.com/ssl/xx.com_bundle.pem', // 也可以是crt文件 'local_pk' => '/www/wwwroot/xx.com/ssl/xx.com.key', 'verify_peer' => false, //'allow_self_signed' => true, //如果是自签名证书需要开启此选项 ) ); // gateway 进程,这里使用Text协议,可以用telnet测试 $gateway = new Gateway("websocket://0.0.0.0:2084",$context);
注:证书要使用绝对路径。
在主websockets文件中(start_gateway.php),加入配置:
require_once __DIR__ . '/../../vendor/autoload.php';
$context = array(
// 更多ssl选项请参考手册 http://php.net/manual/zh/context.ssl.php
'ssl' => array(
// 请使用绝对路径
'local_cert' => '/www/wwwroot/xx.com/ssl/xx.com_bundle.pem', // 也可以是crt文件
'local_pk' => '/www/wwwroot/xx.com/ssl/xx.com.key',
'verify_peer' => false,
//'allow_self_signed' => true, //如果是自签名证书需要开启此选项
)
);
// gateway 进程,这里使用Text协议,可以用telnet测试
$gateway = new Gateway("websocket://0.0.0.0:2084",$context);
注:证书要使用绝对路径。