# chat **Repository Path**: qfsz168/chat ## Basic Information - **Project Name**: chat - **Description**: 即时聊天工具 - **Primary Language**: PHP - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-12-08 - **Last Updated**: 2023-03-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README workerman-chat ======= 基于workerman的GatewayWorker框架开发的一款高性能支持分布式部署的聊天室系统。 GatewayWorker框架文档:http://www.workerman.net/gatewaydoc/ 特性 ====== * 使用websocket协议 * 多浏览器支持(浏览器支持html5或者flash任意一种即可) * 多房间支持 * 私聊支持 * 掉线自动重连 * 微博图片自动解析 * 聊天内容支持微博表情 * 支持多服务器部署 * 业务逻辑全部在一个文件中,快速入门可以参考这个文件[Applications/Chat/Event.php](https://github.com/walkor/workerman-chat/blob/master/Applications/Chat/Event.php) 获取https证书 & 配置Nginx代理 ===== ``` upstream workerman { server 127.0.0.1:55151; keepalive 10240; } server { listen 80; listen 443 ssl http2; server_name 【填自己的域名】; index.php; root 【填自己服务器上的本代码绝对路径】; #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则 ssl_certificate 【填自己服务器上的证书的绝对路径】; #如: /www/server/panel/vhost/cert/chat.qfsz168.top/fullchain.pem; ssl_certificate_key 【填自己服务器上的证书的绝对路径】; #如: /www/server/panel/vhost/cert/chat.qfsz168.top/privkey.pem; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; add_header Strict-Transport-Security "max-age=31536000"; error_page 497 https://$host$request_uri; #SSL-END location /wss { proxy_pass http://127.0.0.1:7272; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header X-Real-IP $remote_addr; } location / { proxy_pass http://workerman; proxy_http_version 1.1; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Connection ""; } } ``` 下载安装 ===== 1、git clone https://github.com/walkor/workerman-chat 2、composer install 启动停止(Linux系统) ===== 以debug方式启动 ```php start.php start ``` 以daemon方式启动 ```php start.php start -d ``` 启动(windows系统) ====== 双击start_for_win.bat 注意: windows系统下无法使用 stop reload status 等命令 如果无法打开页面请尝试关闭服务器防火墙 测试 ======= 浏览器访问 http://服务器ip或域:55151,例如http://127.0.0.1:55151 [更多请访问www.workerman.net](http://www.workerman.net/workerman-chat)