第一、准备
1、PHP版本建议使用PHP5.6。
2、开放9501端口。
第二、组件
1、Redis【宝塔面板在php扩展中点击安装下】。
2、Swoole【一般需手动安装php5.6安装swoole扩展】
第三、修改配置文件
1、打开人人商城模块里的配置文件【/addons/ewei_shopv2/core/socket/socket.config.php】
若没有则直接创建
<?php
/**
* socket server配置文件,重启后生效
*/
// 开发模式开关
define('SOCKET_SERVER_DEBUG', false);
// 设置服务端IP
define('SOCKET_SERVER_IP', 'localhost');
// 设置服务端端口
define('SOCKET_SERVER_PORT', '9501');
// 设置是否启用SSL
define('SOCKET_SERVER_SSL', false);
// 设置SSL KEY文件路径
define('SOCKET_SERVER_SSL_KEY_FILE', '/www/');
// 设置SSL CERT文件路径
define('SOCKET_SERVER_SSL_CERT_FILE', '/www/');
// 设置启动的worker进程数
define('SOCKET_SERVER_WORKNUM', 4);
// 设置客户端请求IP
define('SOCKET_CLIENT_IP', '你的域名');
2、检测网站是否开启HTTPS,若开启则需修改刚上文代码【若没开启则不用修改,直接上传】
将define('SOCKET_SERVER_SSL', false);
改为 define('SOCKET_SERVER_SSL', true);
设置证书文件路径
// 设置SSL KEY文件路径
define('SOCKET_SERVER_SSL_KEY_FILE', '证书路径');
// 设置SSL CERT文件路径
define('SOCKET_SERVER_SSL_CERT_FILE', '证路路径');
第四、启动服务
1、手动启动
/www/server/php/56/bin/php /www/wwwroot/你的网站目录/addons/ewei_shopv2/core/socket/server.php
【启动之后,登录互动直播后台,应该能看到已经连接畅通】
2、设置自动启动【建议设置自启动,防止因服务器重启造成通信断开】
/www/server/php/56/bin/php /www/wwwroot/你的网站目录/addons/ewei_shopv2/core/socket/server.php >> /etc/rc.d/rc.local
注:
1、若端口加了配置也修改了,就是启动不了,则可能是端口被占用
1)最快的方法就是直接重启服务器,再重复上述 第四;
2)netstart -anlp |grep 9501 或者 lsof -i:9501 找出后占用端口的程序的PID,用kill -9 PID 结束掉后,再运行下命令,就行了
2、若重启服务器后又不行或者自启动设置失败,则可试试以下方法
1)将上面2设置自启动换种迂回方式执行;
2)在root目录或网站目录新建一个文件,如:socket.sh ,名字随便,内容如下:
#!/bin/bash
/www/server/php/56/bin/php -f /www/wwwroot/你的网站目录/addons/ewei_shopv2/core/socket/server.php
3)将上面2设置自启动server.php文件换成你新建的socket.sh,并尝试重新运行;
至此结束,随做笔记,方便查看