# adly_team_buy **Repository Path**: buddhist-heart/adly_team_buy ## Basic Information - **Project Name**: adly_team_buy - **Description**: fastadmin框架, 香港团购商城,视频播放 - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 6 - **Created**: 2022-12-09 - **Last Updated**: 2022-12-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # fastadmin商城基础仓库 #php think crud -t fa_report_content -c report/content -u 1 ### 介绍 基于ThinkPHP 开发的 商城系统 PHP >= 7.1 且 < 7.3 (推荐PHP7.1版本) Mysql >= 5.5.0 (需支持innodb引擎) Apache 或 Nginx PDO PHP Extension MBstring PHP Extension CURL PHP Extension Node.js (可选,用于安装Bower和LESS,同时打包压缩也需要使用到) Composer (可选,用于管理第三方扩展包) Bower (可选,用于管理前端资源) Less (可选,用于编辑less文件,如果你需要增改css样式,最好安装上) ### fastadmin文档地址 https://doc.fastadmin.net/doc/index.html ### 功能模块 ├── application │ └── admin │ ├── controller │ │ └── Test.php //控制器类 │ ├── lang │ │ ├── zh-cn │ │ │ └── test.php //功能语言包,按需加载 │ │ └── zh-cn.php //后台语言包,默认加载 │ ├── model │ │ └── Test.php //模型类 │ ├── validate │ │ └── Test.php //验证器类 │ └── view │ └── test │ ├── index.html //列表视图 │ ├── add.html //添加视图 │ └── edit.html //编辑视图 └── public └── assets └── js └── backend └── test.js //功能模块JS文件 ### 安装教程 1. clone到本地后,修改根目录下.env文件,填写本地数据库信息,开发模式debug设置为true,生产模式设为false 2. 设置伪静态 ##### nginx ``` location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; } } ``` ##### apache ``` Options +FollowSymlinks -Multiviews RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L] ``` 3. 运行目录设为public 4. 后台地址,http://xxx.com/ssadmin.php ### IM即时通讯 #### win启动 1. 根目录下运行命令窗口,运行 ``` start php think wanlshop:chat --deploy register & start php think wanlshop:chat --deploy business & start php think wanlshop:chat --deploy gateway ``` 2. 弹出三个窗口,且无报错、闪退,则开启成功 #### linux启动 1. 根目录下运行命令窗口,首次运行 ``` php think wanlshop:chat start //可以看到是否有其他被禁用函数导致不正常启动 ``` 2. 对应处理相关错误后,运行 ``` php think wanlshop:chat start --daemon ``` 调试启动(终端关闭后会关闭进程) ``` php think wanlshop:chat start ``` 守护启动(终端关闭后会在后台持续运行) ``` php think wanlshop:chat start --daemon ``` 停止 ``` php think wanlshop:chat stop ``` 重启 ``` php think wanlshop:chat restart ``` 平滑重启 ``` php think wanlshop:chat reload ``` 查看状态 ``` php think wanlshop:chat status ``` #### 配置wss服务 wss需要绑定ssl证书,不是把ws改成wss就可以,一般站点443端口用作服务器,不能在给ws绑定443端口,只能新建普通站点绑定ssl证书 反向代理 http://ip:7272 后可以使用协议wss协议访问站点 Nginx反向代理 ``` server { listen 80; listen 443 ssl http2; server_name chat.wanlshop.com; location / { proxy_pass http://47.111.117.35:7272; #代理到上面的地址去,格式:http://域名:端口号, proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_connect_timeout 5s; #配置点1 proxy_read_timeout 60000s; #配置点2,如果没效,可以考虑这个时间配置长一点 proxy_send_timeout 60000s; #配置点3 } #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则 #error_page 404/404.html; #HTTP_TO_HTTPS_START if ($server_port !~ 443){ rewrite ^(/.*)$ https://$host$1 permanent; } #HTTP_TO_HTTPS_END ssl_certificate /www/server/panel/vhost/cert/chat.wanlshop.com/fullchain.pem; ssl_certificate_key /www/server/panel/vhost/cert/chat.wanlshop.com/privkey.pem; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; error_page 497 https://$host$request_uri; #SSL-END #ERROR-PAGE-START 错误页配置,可以注释、删除或修改 #error_page 404 /404.html; #error_page 502 /502.html; #ERROR-PAGE-END #禁止访问的文件或目录 location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md) { return 404; } access_log /dev/null; error_log /www/wwwlogs/chat.wanlshop.com.error.log; } ``` ### 坑点概述 1. websocket://0.0.0.0:7272 在客户端如果连接出现 WebSocket connection to 'ws://x.x.x.x:7272/' failed: Error in connection establishment :net::ERR_NAME_NOT_TIMED_OUT 表示防火墙拦住了设置的端口。 ``` 解决方法: 服务器开启7272端口 ``` 2. 如果启动后出现 PHP Warning: stream_socket_server(): unable to connect to tcp://xx.xx.xx.xx:xxxx (Address already in use) in xxxxx on line xxxx ``` 解决方法: 通过命令netstat -anp | grep 端口号来找出哪个程序占用了端口,然后关闭对应程序释放端口。 ``` 3. 如果启动后出现 PHP Warning: stream_socket_server(): unable to connect to tcp://0.0.0.0:xxx (Permission denied) ``` 解决方法: 使用大于1024的端口或者使用root用户启动服务。 ``` 4. 如果启动后出现 PHP Warning: stream_socket_server(): unable to connect to tcp://xx.xx.xx.xx:xxx (Cannot assign requested address) in /home/GatewayWorker/Workerman/Worker.php on line xxxx ``` 解决方法: 启动脚本ip参数写错,不是本机ip,请填写本机ip机或者填写 0.0.0.0(表示监听本机所有ip)即可解决。提示:Linux系统可以通过命令 ifconfig查看本机所有网卡ip。如果您是腾讯云用户,注意您的公网ip实际是代理服务器ip,公网ip并不属于你的服务器,所以无法通过公网ip绑定,但是可以通过0.0.0.0来绑定。 ``` 5. 启动成功也没有报错,接受不到任何消息,智能客服也没有自动回复 IM即时通讯启动后,客户端与UID绑定握手成功,IM服务器会定时向客户端发送心跳消息,客户端F12 调试,选择ws ,如果ws链接出错或并没有接受到心跳消息,且智能客服没有自动回复 解决方法: ``` 检查 ws:// 地址是否正确 小程序需要使用 wss:// 且要在后台设置白名单,是否使用wss或配置是否成功 具体查看 端口 和 wss 配置 去 addons/wanlshop/library/GatewayWorker/vendor/workerman/workerman.log,查看错误的地方在哪里再修改即可,或给我们留言 ``` ### 计划任务 主要用作于 订单类:超时取消未支付订单、超时自动收货、超时自动默认评论 退款类:超时自动同意退款、超时退货关闭订单、超时卖家自动收货完成退款 1. 配置商城计划时间 进入 后台 > 多用户商城 > 系统管理 > 系统设置 选择订单配置和退款配置,填写计划任务相应时长 2. 打开CMD或SSH终端在项目根目录运行 ``` php think wanlshop:order start ``` 线上 守护启动(终端关闭后会在后台持续运行) ``` php think wanlshop:order start --daemon ``` 停止 ``` php think wanlshop:order stop ``` 重启 ``` php think wanlshop:order restart ``` 平滑重启 ``` php think wanlshop:order reload ``` 查看状态 ``` php think wanlshop:order status ```