mirror of
https://gitee.com/liuxioabin/fengketrade.git
synced 2026-04-17 12:57:32 +08:00
96 lines
2.0 KiB
Markdown
96 lines
2.0 KiB
Markdown
|
|
# 快速部署说明
|
||
|
|
|
||
|
|
## 方式1: 一键自动部署 (推荐)
|
||
|
|
|
||
|
|
```bash
|
||
|
|
bash deploy_fix.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
这个脚本会自动完成:
|
||
|
|
1. ✅ 检查本地代码
|
||
|
|
2. ✅ 上传诊断脚本
|
||
|
|
3. ✅ 运行服务器诊断
|
||
|
|
4. ✅ 上传修复文件
|
||
|
|
5. ✅ 重启PHP-FPM
|
||
|
|
6. ✅ 清除OPcache
|
||
|
|
7. ✅ 验证部署
|
||
|
|
|
||
|
|
**注意:** 需要输入服务器密码 `atBSGSu0$!T`
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 方式2: 手动步骤
|
||
|
|
|
||
|
|
### 1. 上传诊断脚本
|
||
|
|
```bash
|
||
|
|
scp server_diagnose.sh root@47.96.77.165:/www/wwwroot/fengketrade/
|
||
|
|
```
|
||
|
|
|
||
|
|
### 2. SSH登录服务器
|
||
|
|
```bash
|
||
|
|
ssh root@47.96.77.165
|
||
|
|
# 密码: atBSGSu0$!T
|
||
|
|
```
|
||
|
|
|
||
|
|
### 3. 运行诊断
|
||
|
|
```bash
|
||
|
|
cd /www/wwwroot/fengketrade
|
||
|
|
bash server_diagnose.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
### 4. 上传修复文件(在本地新终端执行)
|
||
|
|
```bash
|
||
|
|
scp addons/shopro/library/ccblife/CcbPaymentService.php \
|
||
|
|
root@47.96.77.165:/www/wwwroot/fengketrade/addons/shopro/library/ccblife/
|
||
|
|
```
|
||
|
|
|
||
|
|
### 5. 重启PHP(在服务器上)
|
||
|
|
```bash
|
||
|
|
systemctl restart php-fpm
|
||
|
|
php -r "opcache_reset();"
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 验证部署
|
||
|
|
|
||
|
|
### 方法1: 监控日志
|
||
|
|
```bash
|
||
|
|
ssh root@47.96.77.165 \
|
||
|
|
'tail -f /www/wwwroot/fengketrade/runtime/log/$(date +%Y%m)/$(date +%d).log' \
|
||
|
|
| grep '最终支付串'
|
||
|
|
```
|
||
|
|
|
||
|
|
然后触发一次支付,观察输出:
|
||
|
|
- ✅ **正确**: `PROINFO=%u6F2B` (% 后直接是 u)
|
||
|
|
- ❌ **错误**: `PROINFO=%25u6F2B` (% 被编码成 %25)
|
||
|
|
|
||
|
|
### 方法2: 检查关键代码行
|
||
|
|
```bash
|
||
|
|
ssh root@47.96.77.165 \
|
||
|
|
'sed -n "279p" /www/wwwroot/fengketrade/addons/shopro/library/ccblife/CcbPaymentService.php'
|
||
|
|
```
|
||
|
|
|
||
|
|
应该输出: `$finalParts[] = $key . '=' . $value;`
|
||
|
|
不应包含: `urlencode`
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 详细文档
|
||
|
|
|
||
|
|
查看 `SERVER_FIX_GUIDE.md` 获取完整的操作指南和故障排查。
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 已修复的问题
|
||
|
|
|
||
|
|
1. ✅ **URL编码问题**: 移除了最终支付串的URL编码
|
||
|
|
2. ✅ **ENCPUB格式**: 转换为URL-safe BASE64 (+ → -, / → _)
|
||
|
|
3. ✅ **十六进制商户公钥**: 支持.env中的十六进制格式
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 预期结果
|
||
|
|
|
||
|
|
修复后,建行支付应该能成功拉起收银台,不再报"支付签名生成不成功"错误。
|