feat(config): 更新配置以支持HTTPS域名访问

- 将所有环境的前端URL从localhost和IP地址更新为https://shopd.mtkj2025.com
- 配置PayPal webhook使用HTTPS域名以满足PayPal安全要求
- 统一后端服务端口从18082调整为8082
- 更新Java代码中的默认URL配置和启动日志信息
- 创建域名配置、Nginx SSL配置和公网访问检查清单文档
- 为商品链接生成和API访问配置HTTPS协议支持
This commit is contained in:
2025-12-26 15:18:34 +08:00
parent bbf235362c
commit a3633577b4
12 changed files with 484 additions and 31 deletions

134
DOMAIN_CONFIG_SUMMARY.md Normal file
View File

@@ -0,0 +1,134 @@
# 域名配置总结
## ✅ 已完成的配置修改
### 域名信息
- **域名**: `shopd.mtkj2025.com`
- **SSL证书**: 已配置Let's Encrypt
- **协议**: HTTPS443端口
### 1. 后端配置文件
#### application-dev.yml
-`app.frontend.url: https://shopd.mtkj2025.com`
-`paypal.webhook-url: https://shopd.mtkj2025.com/api/paypal/webhook`
#### application-prod.yml
-`app.frontend.url: ${app.frontend.url:https://shopd.mtkj2025.com}`
-`paypal.webhook-url: ${paypal.webhook-url:https://shopd.mtkj2025.com/api/paypal/webhook}`
#### mt-startup/application-dev.yml
-`app.frontend.url: https://shopd.mtkj2025.com`
#### mt-startup/application.yml
-`app.frontend.url: https://shopd.mtkj2025.com`
### 2. Java代码
#### ProductServiceImpl.java
- ✅ 默认值: `https://shopd.mtkj2025.com`
- ✅ 注释示例已更新
#### ProductLinkServiceImpl.java
- ✅ 默认值: `https://shopd.mtkj2025.com`
#### MtPayApplication.java
- ✅ 启动日志使用域名和HTTPS协议
- ✅ 前端地址提示: `https://shopd.mtkj2025.com`
#### MtkjpayApplication.java
- ✅ 启动日志使用域名和HTTPS协议
- ✅ 前端地址提示: `https://shopd.mtkj2025.com`
### 3. 前端配置
#### .env.production
-`VITE_API_BASE_URL=/api`(相对路径,自动使用当前域名)
#### config/index.js
- ✅ 使用相对路径自动适配HTTPS域名
## 📋 配置说明
### 前端URL配置
- **配置值**: `https://shopd.mtkj2025.com`
- **用途**: 生成商品详情页链接
- **格式**: `https://shopd.mtkj2025.com/product/{linkCode}`
### PayPal Webhook配置
- **配置值**: `https://shopd.mtkj2025.com/api/paypal/webhook`
- **要求**: PayPal只接受HTTPS端口443
- **说明**: 通过Nginx SSL转发到后端8082端口
### 前端API请求
- **配置**: 相对路径 `/api`
- **说明**: 自动使用当前域名和协议HTTPS
- **实际请求**: `https://shopd.mtkj2025.com/api/xxx`
## 🔧 服务器配置要求
### Nginx配置
需要确保Nginx配置支持
1. **HTTPS监听**443端口
2. **SSL证书**(已配置)
3. **强制HTTPS**(建议开启)
4. **API反向代理**转发到后端8082
### 防火墙
- ✅ 443端口已开放HTTPS
- ✅ 80端口已开放HTTP可重定向到HTTPS
- ✅ 8082端口已开放后端服务仅内网访问
## 📝 下一步操作
### 1. 重新打包后端
```bash
cd E:\MTKJPAY
mvn clean package -DskipTests
```
### 2. 上传并部署
- 上传新的jar包到服务器
- 重启后端服务
### 3. 更新PayPal控制台
- Webhook URL: `https://shopd.mtkj2025.com/api/paypal/webhook`
- 测试Webhook连接
### 4. 验证配置
- 访问前端: `https://shopd.mtkj2025.com`
- 测试API: `https://shopd.mtkj2025.com/api/health`
- 创建商品,检查生成的链接是否为: `https://shopd.mtkj2025.com/product/xxxxx`
## ⚠️ 重要提示
1. **强制HTTPS**
- 在宝塔面板中开启"强制HTTPS"开关
- 确保所有HTTP请求自动重定向到HTTPS
2. **商品链接生成**
- 所有生成的商品链接将使用: `https://shopd.mtkj2025.com/product/{linkCode}`
- 确保链接可以通过HTTPS正常访问
3. **PayPal Webhook**
- 必须使用HTTPS域名
- 确保Nginx正确转发到后端
- 测试Webhook连接是否正常
4. **前端访问**
- 前端通过HTTPS访问: `https://shopd.mtkj2025.com`
- API请求自动使用HTTPS: `https://shopd.mtkj2025.com/api/xxx`
## ✅ 配置检查清单
- [x] 所有配置文件中的URL已更新为域名
- [x] 所有URL使用HTTPS协议
- [x] Java代码默认值已更新
- [x] 启动日志已更新
- [x] 前端使用相对路径(自动适配域名)
- [ ] 重新打包后端
- [ ] 上传并部署新版本
- [ ] 在宝塔面板开启"强制HTTPS"
- [ ] 更新PayPal控制台Webhook URL
- [ ] 验证所有功能正常