人人商城互动直播live相关资料整理

记录一下人人商城互动直播插件live实现通信的实现,三方直播解决方案的API处理,及其他相关资料的陆续更新整理。

人人商城开启互动直播通信服务

老杨服务器环境是基于 Centos 的 LNMP 环境,安装宝塔面板,本文就据此来记录。

安装组件

在 PHP5.6 扩展管理中,安装如下两个组件

1、Redis

2、Swoole

安装两个组件之后,需要在宝塔及阿里云或腾讯云两边同时放行端口:6379和9501,最后还要记录重启PHP或服务器生效。

重启服务可能会有类似如下的报错提示:

NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/www/server/php/56/lib/php/extensions/no-debug-non-zts-20131226/php_openssl.dll' - /www/server/php/56/lib/php/extensions/no-debug-non-zts-20131226/php_openssl.dll: cannot open shared object file: No such file or directory in Unknown on line 0

官方解答是宝塔面板默认开启了curl跟Openssl扩展,因此我们在 PHP5.6 管理的php.ini配置文件中,将openssl组件注释掉即可

;extension=php_openssl.dll

配置文件

人人商城直播服务配置文件位于如下目录,如果不存在则直接创建

ewei_shopv2/core/socket/socket.config.php

socket.config.php 文件源码如下

<?php
/**
 * socket server配置文件,重启后生效
 */

// 开发模式开关
define('SOCKET_SERVER_DEBUG', false);

// 设置服务端IP
define('SOCKET_SERVER_IP', 'localhost');

// 设置服务端端口
define('SOCKET_SERVER_PORT', '9501');

// 设置是否启用SSL,如果站点用了https的话,false改成true,并配置下面的key文件和pem文件路径
define('SOCKET_SERVER_SSL', true);

// 设置SSL KEY文件路径 本站域名的SSL
define('SOCKET_SERVER_SSL_KEY_FILE', '/www/wwwroot/yangjunwei.com/addons/ewei_shopv2/cert/123456.key');

// 设置SSL CERT文件路径
define('SOCKET_SERVER_SSL_CERT_FILE', '/www/wwwroot/yangjunwei.com/addons/ewei_shopv2/cert/123456.pem');

// 设置启动的worker进程数
define('SOCKET_SERVER_WORKNUM', 8);

// 设置你的域名,如果用了https,请填写配置了https的那个域名
define('SOCKET_CLIENT_IP', 'yangjunwei.com');

如果你的项目开启了 https ,则上述配置文件同样要开启 SSL,并填写 SSL 的证书绝对路径,同样后续如果使用阿里云或腾讯云的直播服务,也需要将【播流域名】开启SSL,否则前端无法观看。

执行PHP文件

在宝塔终端中执行如下命令

/www/server/php/56/bin/php -f  /www/wwwroot/yangjunwei/addons/ewei_shopv2/core/socket/server.php

这里面的命令路径需要严格按照服务器实际路径,宝塔环境默认的php目录了;同时,后边的PHP路径也要按自己网站项目的实际路径

接着执行如下命令

netstat -lnp | grep 9501

返回如下则表示通信服务连接成功了

tcp        0      0 0.0.0.0:9501            0.0.0.0:*               LISTEN      4861/PHP EWEISHOP

互动直播行业解决方案

开通视频直播

阿里云在线开通:视频云直播

腾讯云在线开通:直播LVB