客服配置-shopro

客服配置

注意事项

  • shopro客服系统 采用 workerman 的 gateway-worker 作为服务基础,请先安装 gateway-worker 扩展包
  • shopro商城 已不再支持 workerman 在线客服插件

安装部署

安装扩展包

composer require workerman/gateway-worker:~3.0

删除禁用函数(如有未列出的,请帮忙反馈,谢谢( ^∀^))

putenv
shell_exec
proc_open
pcntl_alarm
pcntl_fork
pcntl_wait
pcntl_signal
pcntl_signal_dispatch

linux 服务器

必要扩展

如果是宝塔,默认已经开启了这两个扩展
  • pcntl
  • posix

建议安装扩展(性能提升)

可以不装,如果想提升 workerman 性能的小伙伴,需要自行百度搜索 php 安装 event 扩展
  • event

参数配置

注意事项

  • 建议开启 ssl 连接
  • 如果wss 连接方式选择 证书,ssl 证书要填写证书在服务器的绝对地址
  • 如果一台服务器上同时部署多套商城,则 gateway 端口gateway 内部端口worker 服务端口,都需要变更,gateway 内部端口,和 worker 服务端口,建议在现有端口基础上 + 10,给之后调进程数量留足够的空间,比如 2020 变为 2030

配置

客服配置-shopro_第1张图片

部署 wss

  • 注意反向代理和证书方式只需要配置一个即可

nginx 反向代理(如果nginx 建议使用)

目前只提供 nginx 的配置文档,按照这个配置可以不用放行客服端口[1819]
  • 反向代理配置一定要在伪静态上面
  • 反向代理配置一定要在伪静态上面
  • 反向代理配置一定要在伪静态上面

反向代理配置,注意修改里面的端口为自己后台配置的客服端口

location ^~ /websocket {        
  proxy_redirect off;
  proxy_pass http://127.0.0.1:1819;      # 转发
  proxy_set_header Host $host;
  proxy_set_header X-Real_IP $remote_addr;
  proxy_set_header X-Forwarded-For $remote_addr:$remote_port;
  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;   # 升级协议头
  proxy_set_header Connection upgrade;
}

配置完整示例,注意截图有限,反向代理下面是伪静态和图片跨域,之前配置好了的,都不需要动,只需要在最前面追加反向代理配置

客服配置-shopro_第2张图片

ssl 证书配置方式

  • 证书这里要直接使用 https 域名的证书,wss 证书,和 wss key 输入框这里直接填写证书的绝对地址
  • 如果是宝塔证书地址在这里:宝塔-》网站-》设置-》配置文件 里面可以看到
  • 注意如果是 linux 要确保客服进程启动用户有读取证书的权限,可以改证书和所在目录的权限,或者是将证书复制一份到项目目录,把证书设置成 www 用户所有

证书配置方法(推荐,以宝塔为例)

  • 第一步,配置域名 https 证书,并且找到证书地址

    客服配置-shopro_第3张图片

  • 第二步,去刚才的地址复制证书

    客服配置-shopro_第4张图片

  • 第三步,将证书放入项目目录,并且给上权限

    客服配置-shopro_第5张图片

  • 第四步,将放置的完整证书地址填入客服配置

    客服配置-shopro_第6张图片

启动服务

linux 服务器

注意事项

  • linux 下启动客服命令要使用当前 php-fpm 启动用户作为启动用户,如果是宝塔,则是 www 用户

请先在调试模式下启动

调试模式下可以发现绝大部分问题,请一定现在调试模式下调通之后在守护方式启动,调试模式按 ctrl+c 停止,停止时候的报错可以忽略(因为ctrl+c使进程异常终止)
sudo -u www php think shopro:chat start

启动

调试模式启动
sudo -u www php think shopro:chat start

正式模式,守护进程方式启动
sudo -u www php think shopro:chat start d

停止

如果调试模式,直接 ctrl + c 即可

正式模式
sudo -u www php think shopro:chat stop

查看状态

正式模式
sudo -u www php think shopro:chat status

启动成功是这个样子的

注意 workerman 输出的停止命令是错的,不要使用
Workerman[shopro:chat] start in DAEMON mode
------------------------------------------------- WORKERMAN --------------------------------------------------
Workerman version:4.0.9          PHP version:7.2.31
-------------------------------------------------- WORKERS ---------------------------------------------------
proto   user            worker                      listen                      processes    status
tcp     root       Register                    text://0.0.0.0:2238         1             [OK]
tcp     root       ShoproChatBusinessWorker    none                        4             [OK]
tcp     root       ShoproChatGateway           websocket://0.0.0.0:1818    2             [OK]
--------------------------------------------------------------------------------------------------------------
Input "php shopro:chat stop" to stop. Start success.

windows 服务器

windows 不支持命令模式启动

启动服务请双击启动脚本

会打开一个命令窗口,并且停在那里
/addons/shopro/library/chat/start_for_win/shopro_chat_start_for_win.bat

关闭直接把命令窗口关掉即可

你可能感兴趣的:(shopro组,ssl,服务器,https)