本安装教程主要是服务端的安装,请认真仔细按照安装教程来,不要自作主张根据自己的想法来。请结合各个项目中根目录的项目说明文件
README.md进行相应端的开发和发布。
安装程序需要有一定的PHP经验和服务器运维经验,如果没有请加入交流群联系作者,作者提供付费部署服务!
需要先安装好运行环境,推荐使用宝塔服务器,安装LNMP的架构,建议使用nginx作为服务器,不建议使用apache。需要安装以下软件:
| 所需环境 | 版本 | 备注 | 推荐版本 |
|---|---|---|---|
| linux | >= 7.0 | 以下的版本未做测试 | 7.9 |
| nginx | >= 1.17 | 最新的 | |
| php | >= 7.1 | 不兼容8 | 7.3 |
| mysql | >= 5.7 | 必须要5.7及以上 | 5.7 |
| redis | >= 5.0 | 7.0 |
服务器配置最低要求:核心:2核;运行内存:2G;带宽:2M
重要操作
使用宝塔面板更易安装
以下内容,非常重要!!!!!如果出现错误,重新检查是否以满足条件。
1、PHP需要安装扩展redis fileinfo
2、PHP需要取消禁用函数shell_exec chown exec proc_open pcntl_exec pcntl_alarm pcntl_fork pcntl_waitpid pcntl_wait pcntl_signal pcntl_signal_dispatch putenv
以下内容,非常重要!!!!!如果出现错误,重新检查是否以满足条件。
下载完整源码放到自己的服务器上。请注意看gitee项目主页顶部右侧 [发行版链接(戳我)],请在发行版中下载最新发布的版本。
1. 把代码上传至服务器,将整个目录权限给 www 用户,并赋予 755权限,创建网站,把网站的运行目录指向项目根目录下的 public 目录,运行目录一定要是这个。
2. 设置伪静态和反向代理,下面只展示nginx的伪静态和反向代理配置,apache的请自行百度或者使用chatGPT转换。【直接复制下面全部代码到伪静态中即可】
#伪静态配置
location ~* (runtime|application)/{
return 403;
}
location / {
if (!-e $request_filename){
rewrite ^(.*)$ /index.php?s=$1 last; break;
}
}
#反向代理配置,如果有修改端口,需要替换下方的8282端口
location /wss
{
proxy_pass http://127.0.0.1:8282;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header X-Real-IP $remote_addr;
}
3. 如果有域名并且要使用音视频通话、语音消息等服务还需要配置证书来开启HTTPS,可以使用免费的 Let's Encrypt 证书,如果不需要这些服务,可以直接使用HTTP协议和IP地址访问,但是功能会受限。
4. 访问你的ip或者域名即可进入自定义安装向导,如果访问出错,就是自己的准备工作没有按照要求进行,请检查。
5. 部署完成之后管理员账号密码为administrator 123456,管理入口在聊天界面的左下角。
6. 安装成功后是无法实时接收消息的,请参考下一章“启动消息推送服务”。
1. 进入 public\sql\database.sql 将数据库导入自己的数据库。
2. 进入项目根目录,修改 example.env 为 .env ,并修改数据库相应的参数,**请仔细阅读env中的配置说明**。
PS:如需开启聊天文件存入oss,需要在后台中进行配置,配置后不要再对环境配置文件进行修改。
因为是聊天软件需要用到websockt,所以我们需要启动workerman,系统已经内置了相应的服务,可以在后台管理首页 (管理员账号登录后,从左下角进入) 进行运行服务。如果后台运行启动不成功,需要进行以下调试:
系统服务启动失败的原因:
1. 在终端启动了 php think worker:gateway start 或者 php start.php start 这两个命令,请在终端中运行 killall -9 php 或者重启启动服务器再运行。
2. 可能是php不是默认版本,终端执行 php -v 查看版本号是否和创建网站是选定的php版本不一致,如果不一致,需要把网站的版本修改为默认的php版本,并php安装对应的依赖和取消禁用函数。
3. 可能是执行的目录权限不够。重新对所有目录设置为 用户 www 权限 755 ,再次重试。
如果启动失败可进行调试
1. 进入项目根目录 运行 php think worker:gateway start,或者运行 php start.php start 即可运行消息服务。windows下请直接运行根目录下的 start_for_win.bat文件,由于Workerman在Windows下有诸多使用限制,所以正式环境建议用Linux系统,windows系统仅建议用于开发环境。如果没有出现报错,请将运行的命令终止,或者执行 php think worker:gateway stop or php start.php stop,自己启动了那个就终止哪个。调试了没有问题的话,可以直接在管理后台启动消息推送服务
2. 消息服务需要放行 8282 端口,如需修改,请修改环境配置文件中 WORKER 板块的相应参数。windows用户请修改 [ app\worker\start_gateway.php] 中的 8282 端口。端口号根据情况需改。
3. 系统采用直接用域名作为websocket服务的地址,所以需要在网站的nginx中配置代理并监听8282端口,已在伪静态中写了代理配置的参数。
4. 更多关于workerman的使用,请进入[workerman官网]官网进行查阅。
作者提供本系统的安装服务,包括后端和前端部署到线上,保证项目的完美运行,200元/次,安装服务可赠送详细的安装教程以及接口文档,如有需要可以进群联系作者!
如果有什么问题,请留言,或者加入我们的QQ群!
创作不易,点个star吧,【请先点Star后才可以申请加入交流群,否则不予通过】