{{userInfo.nickname}}
用户设置 退出登录

{{wikiTitle}}

客服配置(v4.3以前版本)

客服配置详解

想要使用客服需要就的必须开启长连接。长连接的配置过程稍微复杂,需要服务器放行端口,如果是宝塔就的需要在安全里面接着放行端口。如果是使用https协议访问,那就增加了一个WSS的配置,接下来会一一详细解,每一个配置过程。

1、首先放行服务器端口(v4.3.0之后版本忽略本步骤)

[info] 提示:客服端口可自定义,目前系统默认使用 20002/20003/20012 端口,v4.3.0之后版本忽略本步骤

这里以阿里云服务器为参考,进入服务器安全组端口添加放行端口【20002】【20003】,当然也可以放行【20000/30000】范围之内的全部放行,最后点击保存即可。效果如下图

2、放行服务器端口后,紧接着放行宝塔内的端口(v4.3.0之后版本忽略本步骤)

[info] 没有使用宝塔的用户,并且开启了防火墙就的使用命令放行

进入宝塔后台,点击安全菜单添加放行端口,可以添加范围例如:20000:20003,填入放行说明,最后点击保存。效果如下图

3、网站需要https协议请求,需要配置WSS(v4.3.0之后版本忽略本步骤)

[info] 这里需要明确知道一点,在http协议下访问长连接必须为ws协议,在https协议下访问长连接的协议必须是wss。并且两者不能同时拥有。不能像网站一样http和https都能访问。

首先配置wss,就的下载配置ssl的证书,这里以nginx为例,到阿里云ssl证书中心下载当前网站的ssl证书,下载下来的证书为压缩包,里面有两个文件一个文件以.key结尾的,一个文件以.pem为结尾的。把下载好的证书上传到系统后台的设置->系统设置->wss配置里。按照提示上传在对应的位置。

  • 【是否开启wss】 选择 开启
  • 【ssl证书PEM】上传压缩包中.pem结尾的文件
  • 【ssl密钥KEY】上传压缩包中.key结尾的文件
  • 点击提交保存配置
    效果如下图

4、直接在宝塔上申请的SSL证书,怎么得到证书文件?

进入【宝塔】点击【网站】,网站页面上方的搜索输入网站域名点击搜索,找到对应网站,点击设置->ssl->其他证书;

复制 密钥(KEY)然后在桌面上创建一个.key后缀的文件;

复制证书(PEM格式)然后在桌面上创建一个.pem后缀的文件;
然后就可以按照上一项的说明进行配置了

5、启动长连接

[info] 如何查看网站项目根目录?
答:进入【宝塔】点击【网站】,网站页面上方的搜索输入网站域名点击搜索,找到对应网站复制网站【根目录】

使用远程连接工具连接服务器,推荐使用 Xshell 或 Putty 远程连接工具

[warning] 在启动长连接之前请先去解禁启动长链接需要使用的函数

pcntl_signal pcntl_signal_dispatch pcntl_fork pcntl_wait pcntl_alarm
温馨提示: 找到网站使用的php版本去解禁函数。解禁后重载下php配置。

切换到网站根目录下例如:

cd  /www/wwwroot/crmeb/

输入启动长连接命令

sudo -u www php think workerman start --d

看到如下图所示,证明启动成功,下图中的端口和系统的默认端口是不一致不需要在意这些。上面也提到了长连接的端口是可修改的。

6、测试是否连接成功

在浏览器上打开网站进入H5端,打开浏览器控制台,点击network->ws ,现在进入【我的】页面中的客服页面,查看ws连接是否正常,【Status Code】状态为 101 Switching Protocols 证明启动成功,如下图所示:

7、客服的长连接配置完毕

配置的过程稍微复杂,大致的流程为

  1. 放行服务器上长连接需要的端口
  2. 放行宝塔中长连接需要的端口
  3. 是否需要https协议访问,如果是的话,就需要配置wss
  4. 解禁php函数
  5. 启动长连接
  6. 检测是否成功

以上说明为客服长连接配置的详细说明,这里这要以linux系统为核心讲解怎样开启。

{{cateWiki.like_num}}人点赞
0人点赞
评论({{cateWiki.comment_num}}) {{commentWhere.order ? '评论从旧到新':'评论从新到旧'}} {{cateWiki.page_view_num}}人看过该文档
评论(0) {{commentWhere.order ? '评论从旧到新':'评论从新到旧'}} 218人看过该文档
评论
{{item.user ? item.user.nickname : ''}} (自评)
{{item.content}}
{{item.create_time}} 删除
{{item.like ? item.like.like_num : 0}} {{replyIndex == index ? '取消回复' : '回复'}}
评论
{{items.user ? items.user.nickname : '暂无昵称'}} (自评)
{{items.content}}
{{items.create_time}} 删除
{{items.like ? items.like.like_num : 0}} {{replyIndexJ == (index+'|'+indexJ) ? '取消回复' : '回复'}}
评论
目录
  • {{item}}