从解压 deploy.zip、宝塔添加站点(根目录指向 public)、浏览器跑 install.php 四步生成配置,到 Nginx 伪静态与 IM 路由修复。一份自包含的安装教程。
beeshop 的部署完全自包含,按本教程即可完成。环境要求:Linux + 宝塔面板 + PHP 8.5 + MySQL 8.0 + Nginx 1.22+(含 HTTP/3)。配套代码包 deploy.zip。
一、解压与目录
解压到 /www/wwwroot/beeshop.ademo.cn/,结构为:
beeshop.ademo.cn/
├── public/ # Web 根:index.html、api/、im/、admin/、console/、install.php、sw.js
├── src/ # 应用源码(bootstrap.php、config.local.php 安装后生成)
└── deploy/ # 服务器配置片段(nginx/、本教程)网站根目录必须指向 public/,否则静态资源与路由全错。



二、浏览器一键安装
访问 http://服务器IP/install.php,向导 4 步:
- 环境自检(pdo_mysql / mbstring / openssl / json 必装);
- 数据库连接,生成
src/config.local.php(定义DB_DSN); - 站点与密钥:设 IM 超级管理员(同时是外卖后台登录账号)、WebSocket 公网地址(默认
wss://当前域名/ws)、SaaS 根域、默认套餐档位; - 完成,进入
/admin/。
三、Nginx 配置(关键)
用 beeshop.ademo.cn.nginx.conf 覆盖 vhost,注意三点:
- 路由重写顺序:
location /api/v1/必须排在location /api/之前; location /ws反代到本地127.0.0.1:8080(IM 网关);location = /sw.js与webmanifest修正 PWA(宝塔默认缺 webmanifest mime)。
nginx -t && /etc/init.d/nginx reload四、HTTPS 前提
宝塔「网站 → SSL」一键申请 Let's Encrypt。HTTPS 是 IM 的 PWA / Web Push / iOS 推送的硬性前提。
五、启动 IM 网关(见 实时 IM)
用 Supervisor 常驻 public/im/backend/src/ws/run.php 8080 8081。
常见问题
必须先访问 install.php 吗?
全新安装必须。它会生成 src/config.local.php(定义 DB_DSN),否则连库失败。
为什么 /api/v1/ 要在 /api/ 之前?
Nginx 取最长前缀匹配。若 /api/ 排在前面,会抢走 IM 的 /api/v1/* 路由导致 404。
Web Push 必须 HTTPS 吗?
是。PWA / Web Push / iOS 推送都依赖 HTTPS,安装阶段就要申请证书。



评论 (0)
还没有评论,来抢沙发吧。