Files
24kycj 5fb269cc0a fix(web): 本地优先保存与 design 页体验修复
- 保存先写本地缓存,登录后可选云端同步;退出登录不再因文件操作跳转登录

- 修复 Layui 遮罩残留、design2 保存后线条、toast 被 finally 提前关闭

- 保存过程恢复 loading spinner;成功提示 2.5 秒

- 云端 payload 瘦身与体积超限提示;后端 schema 迁移与 FileService 容错

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 19:24:34 +08:00

101 lines
2.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 部署脚本
## 权限(推荐:SSH 粘贴,勿 FTP 上传 .sh
FTP 会把脚本改成 CRLF,报 `set: pipefail`。**在服务器 SSH 整段粘贴:**
```bash
cd /www/wwwroot/designadmin.cardsoon.com
U=www; G=www; ROOT="$PWD"
mkdir -p "$ROOT/storage"/{users,logs,payment,cache/rate,cache/wechat_certs}
chown -R "$U:$G" "$ROOT"
find "$ROOT/src" "$ROOT/public" -type d -exec chmod 755 {} +
find "$ROOT/src" "$ROOT/public" -type f -exec chmod 644 {} +
chmod 755 "$ROOT/config"
test -f "$ROOT/config/local.php" && chmod 640 "$ROOT/config/local.php"
chmod 775 "$ROOT/storage/users" "$ROOT/storage/logs" "$ROOT/storage/cache/rate" "$ROOT/storage/cache/wechat_certs"
chmod 700 "$ROOT/storage/payment"
rm -f "$ROOT/storage/cache/rate/"*.json
echo OK
```
## 上线步骤
```bash
cd /www/wwwroot/designadmin.cardsoon.com
```
```bash
cp config/local.php.example config/local.php
vi config/local.php
```
`db``jwt_secret``site``storage` 路径。
```bash
mysql -u root -p soondesign < database/schema.sql
php scripts/migrate-schema.php
```
`migrate-schema.php` 用于已有库增量升级(可重复执行)。再执行上面「权限」整段粘贴。
### MySQL 大包(云端保存失败时)
若保存报「文件过大」或 `max_allowed_packet`,在宝塔 / MySQL 配置中把 `max_allowed_packet` 调到 **32M** 或以上,重启 MySQL 后生效。可临时验证:
```sql
SET GLOBAL max_allowed_packet = 33554432;
```
持久化写入 `my.cnf`(示例):
```ini
[mysqld]
max_allowed_packet = 32M
```
## 初始化管理员
```bash
cd /www/wwwroot/designadmin.cardsoon.com
php scripts/seed-admin.php admin@cardsoon.com cardsoon
```
成功输出 `OK created admin``OK updated admin`。登录:`https://design.cardsoon.com/pages/admin/login.html`
模型目录:`.soon` 放后端站点(推荐,避免防跨站读不到):
```bash
mkdir -p /www/wwwroot/designadmin.cardsoon.com/soonModels
cp /www/wwwroot/design.cardsoon.com/soonModels/*.soon /www/wwwroot/designadmin.cardsoon.com/soonModels/
chmod 755 /www/wwwroot/designadmin.cardsoon.com/soonModels
chmod 644 /www/wwwroot/designadmin.cardsoon.com/soonModels/*.soon
```
`local.php`
```php
'models_dir' => '/www/wwwroot/designadmin.cardsoon.com/soonModels',
```
排查:
```bash
php scripts/check-soon-models.php
```
## 宝塔
- 网站运行目录:`public`
- Nginx`/api/v1/``index.php``/api/admin/``admin.php`
## 配置
后端只维护 `config/local.php`(从 `local.php.example` 复制)。
前端(`design.cardsoon.com`)只维护 `config/local.js`(从 `config/local.js.example` 复制);全量更新 frontend 时不要覆盖。
## 本地脚本
`setup-backend-perms.sh` 供 git 拉取使用;Windows/FTP 上传易坏,请用上面 SSH 粘贴块。