420 lines
9.4 KiB
Markdown
420 lines
9.4 KiB
Markdown
|
|
# 🔧 动动脑新闻系统 - 快速修复清单
|
|||
|
|
|
|||
|
|
**修复时间:** 2025-10-30
|
|||
|
|
**优先级:** 🔴 高优先级
|
|||
|
|
**预计时间:** 约15分钟
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ✅ 已自动修复的问题
|
|||
|
|
|
|||
|
|
### 1. ✅ 修改登录页版权信息
|
|||
|
|
**文件:** `ruoyi-ui/src/views/login.vue`
|
|||
|
|
**修改:** 第59行
|
|||
|
|
**结果:** ✅ 已修改为"Copyright © 2025 动动脑(DDNAI). All Rights Reserved."
|
|||
|
|
|
|||
|
|
### 2. ✅ 修改注册页版权信息
|
|||
|
|
**文件:** `ruoyi-ui/src/views/register.vue`
|
|||
|
|
**修改:** 第64行
|
|||
|
|
**结果:** ✅ 已修改为"Copyright © 2025 动动脑(DDNAI). All Rights Reserved."
|
|||
|
|
|
|||
|
|
### 3. ✅ 登录页默认密码优化
|
|||
|
|
**文件:** `ruoyi-ui/src/views/login.vue`
|
|||
|
|
**修改:** 第76-77行
|
|||
|
|
**结果:** ✅ 开发环境保留默认值,生产环境自动清空
|
|||
|
|
|
|||
|
|
**修改内容:**
|
|||
|
|
```javascript
|
|||
|
|
username: process.env.NODE_ENV === 'development' ? "admin" : "",
|
|||
|
|
password: process.env.NODE_ENV === 'development' ? "admin123" : "",
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 4. ✅ Swagger配置优化
|
|||
|
|
**文件:** `ry-news-admin/src/main/resources/application.yml`
|
|||
|
|
**修改:** 第118行
|
|||
|
|
**结果:** ✅ 支持环境变量控制
|
|||
|
|
|
|||
|
|
**修改内容:**
|
|||
|
|
```yaml
|
|||
|
|
swagger:
|
|||
|
|
enabled: ${SWAGGER_ENABLED:true} # 默认开启,生产环境通过环境变量关闭
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 5. ✅ Druid IP白名单配置
|
|||
|
|
**文件:** `ry-news-admin/src/main/resources/application-druid.yml`
|
|||
|
|
**修改:** 第47行
|
|||
|
|
**结果:** ✅ 限制为本机和内网访问
|
|||
|
|
|
|||
|
|
**修改内容:**
|
|||
|
|
```yaml
|
|||
|
|
allow: 127.0.0.1,192.168.0.0/16
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📋 需要手动完成的后续工作
|
|||
|
|
|
|||
|
|
### 1. ⚠️ 创建环境配置文件
|
|||
|
|
|
|||
|
|
**操作步骤:**
|
|||
|
|
|
|||
|
|
#### 步骤1:创建开发环境配置
|
|||
|
|
创建文件:`ry-news-admin/src/main/resources/application-dev.yml`
|
|||
|
|
|
|||
|
|
```yaml
|
|||
|
|
# 开发环境配置
|
|||
|
|
spring:
|
|||
|
|
datasource:
|
|||
|
|
druid:
|
|||
|
|
master:
|
|||
|
|
url: jdbc:mysql://localhost:3306/ry_news?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
|||
|
|
username: root
|
|||
|
|
password: ddnai@2025#mysql # 开发环境密码
|
|||
|
|
|
|||
|
|
# 开发环境开启Swagger
|
|||
|
|
swagger:
|
|||
|
|
enabled: true
|
|||
|
|
|
|||
|
|
# 开发环境日志级别
|
|||
|
|
logging:
|
|||
|
|
level:
|
|||
|
|
com.ddnai: debug
|
|||
|
|
org.springframework: warn
|
|||
|
|
|
|||
|
|
# 开发环境Druid监控(无IP限制)
|
|||
|
|
spring:
|
|||
|
|
datasource:
|
|||
|
|
druid:
|
|||
|
|
statViewServlet:
|
|||
|
|
allow: # 开发环境不限制
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 步骤2:创建生产环境配置
|
|||
|
|
创建文件:`ry-news-admin/src/main/resources/application-prod.yml`
|
|||
|
|
|
|||
|
|
```yaml
|
|||
|
|
# 生产环境配置
|
|||
|
|
spring:
|
|||
|
|
datasource:
|
|||
|
|
druid:
|
|||
|
|
master:
|
|||
|
|
url: jdbc:mysql://your-prod-db-server:3306/ry_news?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
|||
|
|
username: prod_user
|
|||
|
|
password: ${DB_PASSWORD} # 使用环境变量
|
|||
|
|
|
|||
|
|
# 生产环境关闭Swagger
|
|||
|
|
swagger:
|
|||
|
|
enabled: false
|
|||
|
|
|
|||
|
|
# 生产环境日志级别
|
|||
|
|
logging:
|
|||
|
|
level:
|
|||
|
|
com.ddnai: info
|
|||
|
|
org.springframework: warn
|
|||
|
|
|
|||
|
|
# 生产环境Druid监控IP限制
|
|||
|
|
spring:
|
|||
|
|
datasource:
|
|||
|
|
druid:
|
|||
|
|
statViewServlet:
|
|||
|
|
allow: 127.0.0.1 # 仅本机访问
|
|||
|
|
|
|||
|
|
# 生产环境关闭热部署
|
|||
|
|
spring:
|
|||
|
|
devtools:
|
|||
|
|
restart:
|
|||
|
|
enabled: false
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 步骤3:修改主配置文件
|
|||
|
|
修改 `application.yml`,指定默认profile:
|
|||
|
|
|
|||
|
|
```yaml
|
|||
|
|
spring:
|
|||
|
|
profiles:
|
|||
|
|
active: dev # 默认使用开发环境
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 步骤4:启动时指定环境
|
|||
|
|
```bash
|
|||
|
|
# 开发环境
|
|||
|
|
java -jar ry-news-admin.jar --spring.profiles.active=dev
|
|||
|
|
|
|||
|
|
# 生产环境
|
|||
|
|
java -jar ry-news-admin.jar --spring.profiles.active=prod
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 2. ⚠️ 完善.gitignore文件
|
|||
|
|
|
|||
|
|
**操作:** 在 `.gitignore` 文件末尾追加以下内容:
|
|||
|
|
|
|||
|
|
```gitignore
|
|||
|
|
######################################################################
|
|||
|
|
# 敏感配置文件(防止生产环境配置被提交)
|
|||
|
|
application-prod.yml
|
|||
|
|
application-local.yml
|
|||
|
|
*.env
|
|||
|
|
|
|||
|
|
# 日志文件
|
|||
|
|
logs/
|
|||
|
|
!.gitkeep
|
|||
|
|
|
|||
|
|
# 上传文件目录
|
|||
|
|
uploadPath/
|
|||
|
|
!.gitkeep
|
|||
|
|
|
|||
|
|
# 前端构建产物和依赖
|
|||
|
|
ruoyi-ui/node_modules/
|
|||
|
|
ruoyi-ui/dist/
|
|||
|
|
ruoyi-ui/.env.development.local
|
|||
|
|
ruoyi-ui/.env.production.local
|
|||
|
|
|
|||
|
|
# 数据库备份文件
|
|||
|
|
backup/
|
|||
|
|
*.sql.backup
|
|||
|
|
*.sql.gz
|
|||
|
|
|
|||
|
|
# 操作系统文件
|
|||
|
|
.DS_Store
|
|||
|
|
Thumbs.db
|
|||
|
|
desktop.ini
|
|||
|
|
|
|||
|
|
# 临时文件
|
|||
|
|
*.tmp
|
|||
|
|
*.temp
|
|||
|
|
*.swp
|
|||
|
|
*~
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 3. ⚠️ 更新文档文件
|
|||
|
|
|
|||
|
|
**操作1:** 删除或重命名原框架文档
|
|||
|
|
```bash
|
|||
|
|
# Windows
|
|||
|
|
del doc\若依环境使用手册.docx
|
|||
|
|
# 或重命名
|
|||
|
|
ren doc\若依环境使用手册.docx 动动脑新闻系统使用手册.docx
|
|||
|
|
|
|||
|
|
# Linux
|
|||
|
|
rm doc/若依环境使用手册.docx
|
|||
|
|
# 或重命名
|
|||
|
|
mv doc/若依环境使用手册.docx doc/动动脑新闻系统使用手册.docx
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 4. ⚠️ 修改JavaScript文件版权注释
|
|||
|
|
|
|||
|
|
**需要修改的文件列表:**
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
ruoyi-ui/src/utils/ruoyi.js
|
|||
|
|
ruoyi-ui/src/directive/permission/hasRole.js
|
|||
|
|
ruoyi-ui/src/directive/permission/hasPermi.js
|
|||
|
|
ruoyi-ui/src/directive/module/clipboard.js
|
|||
|
|
ruoyi-ui/src/directive/dialog/drag.js
|
|||
|
|
ruoyi-ui/src/directive/dialog/dragWidth.js
|
|||
|
|
ruoyi-ui/src/directive/dialog/dragHeight.js
|
|||
|
|
ruoyi-ui/src/assets/styles/ruoyi.scss
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**原注释:**
|
|||
|
|
```javascript
|
|||
|
|
/**
|
|||
|
|
* Copyright (c) 2019 ruoyi
|
|||
|
|
*/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**修改为:**
|
|||
|
|
```javascript
|
|||
|
|
/**
|
|||
|
|
* 动动脑新闻系统
|
|||
|
|
* Copyright (c) 2025 DDNAI
|
|||
|
|
*
|
|||
|
|
* 基于RuoYi开源框架定制开发
|
|||
|
|
*/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**批量修改PowerShell脚本:**
|
|||
|
|
```powershell
|
|||
|
|
# 保存为 fix-copyright.ps1
|
|||
|
|
$files = @(
|
|||
|
|
"ruoyi-ui/src/utils/ruoyi.js",
|
|||
|
|
"ruoyi-ui/src/directive/permission/hasRole.js",
|
|||
|
|
"ruoyi-ui/src/directive/permission/hasPermi.js",
|
|||
|
|
"ruoyi-ui/src/directive/module/clipboard.js",
|
|||
|
|
"ruoyi-ui/src/directive/dialog/drag.js",
|
|||
|
|
"ruoyi-ui/src/directive/dialog/dragWidth.js",
|
|||
|
|
"ruoyi-ui/src/directive/dialog/dragHeight.js",
|
|||
|
|
"ruoyi-ui/src/assets/styles/ruoyi.scss"
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
foreach ($file in $files) {
|
|||
|
|
if (Test-Path $file) {
|
|||
|
|
$content = Get-Content $file -Raw -Encoding UTF8
|
|||
|
|
$content = $content -replace "Copyright \(c\) \d+ ruoyi", "动动脑新闻系统`nCopyright (c) 2025 DDNAI`n`n基于RuoYi开源框架定制开发"
|
|||
|
|
Set-Content $file $content -Encoding UTF8NoBOM
|
|||
|
|
Write-Host "已修改: $file"
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 5. ⚠️ Redis密码配置(如果需要)
|
|||
|
|
|
|||
|
|
**如果你的Redis设置了密码,需要配置:**
|
|||
|
|
|
|||
|
|
**修改文件:** `application.yml`
|
|||
|
|
|
|||
|
|
```yaml
|
|||
|
|
redis:
|
|||
|
|
password: your_redis_password # 填写实际Redis密码
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**或使用环境变量:**
|
|||
|
|
```yaml
|
|||
|
|
redis:
|
|||
|
|
password: ${REDIS_PASSWORD:} # 默认为空,生产环境通过环境变量设置
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**启动时设置:**
|
|||
|
|
```bash
|
|||
|
|
# Windows
|
|||
|
|
set REDIS_PASSWORD=your_password
|
|||
|
|
java -jar ry-news-admin.jar
|
|||
|
|
|
|||
|
|
# Linux
|
|||
|
|
export REDIS_PASSWORD=your_password
|
|||
|
|
java -jar ry-news-admin.jar
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🧪 验证修复结果
|
|||
|
|
|
|||
|
|
### 1. 验证前端修改
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd ruoyi-ui
|
|||
|
|
npm run dev
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**检查项:**
|
|||
|
|
- [ ] 登录页底部显示 "Copyright © 2025 动动脑(DDNAI)"
|
|||
|
|
- [ ] 注册页底部显示 "Copyright © 2025 动动脑(DDNAI)"
|
|||
|
|
- [ ] 登录页在生产环境下不显示默认账号密码
|
|||
|
|
|
|||
|
|
### 2. 验证后端配置
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd d:\project\RuoYi-Vue
|
|||
|
|
mvn clean package -Dmaven.test.skip=true
|
|||
|
|
java -jar ry-news-admin/target/ry-news-admin.jar
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**检查项:**
|
|||
|
|
- [ ] Swagger配置可通过环境变量控制
|
|||
|
|
- [ ] Druid监控页面(http://localhost:8080/druid/)限制IP访问
|
|||
|
|
- [ ] 日志正常输出
|
|||
|
|
|
|||
|
|
### 3. 生产环境验证
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 设置环境变量关闭Swagger
|
|||
|
|
set SWAGGER_ENABLED=false
|
|||
|
|
|
|||
|
|
# 启动
|
|||
|
|
java -jar ry-news-admin.jar --spring.profiles.active=prod
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**检查项:**
|
|||
|
|
- [ ] Swagger UI无法访问(http://localhost:8080/swagger-ui.html)
|
|||
|
|
- [ ] Druid仅允许配置的IP访问
|
|||
|
|
- [ ] 登录页不显示默认账号密码
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📊 修复进度
|
|||
|
|
|
|||
|
|
| 序号 | 修复项 | 状态 | 完成时间 |
|
|||
|
|
|------|--------|------|----------|
|
|||
|
|
| 1 | 登录页版权 | ✅ 已完成 | 自动修复 |
|
|||
|
|
| 2 | 注册页版权 | ✅ 已完成 | 自动修复 |
|
|||
|
|
| 3 | 登录默认密码 | ✅ 已完成 | 自动修复 |
|
|||
|
|
| 4 | Swagger配置 | ✅ 已完成 | 自动修复 |
|
|||
|
|
| 5 | Druid白名单 | ✅ 已完成 | 自动修复 |
|
|||
|
|
| 6 | 环境配置文件 | ⏳ 待手动 | - |
|
|||
|
|
| 7 | .gitignore | ⏳ 待手动 | - |
|
|||
|
|
| 8 | 文档文件 | ⏳ 待手动 | - |
|
|||
|
|
| 9 | 版权注释 | ⏳ 待手动 | - |
|
|||
|
|
| 10 | Redis密码 | ⏳ 可选 | - |
|
|||
|
|
|
|||
|
|
**自动修复:** 5/10 ✅
|
|||
|
|
**待手动完成:** 5/10 ⏳
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🎯 下一步行动
|
|||
|
|
|
|||
|
|
### 立即执行(今天)
|
|||
|
|
1. ✅ 重新编译前端查看效果:`npm run dev`
|
|||
|
|
2. ✅ 重新编译后端验证配置:`mvn clean package`
|
|||
|
|
3. ⏳ 创建环境配置文件(30分钟)
|
|||
|
|
4. ⏳ 更新.gitignore(5分钟)
|
|||
|
|
|
|||
|
|
### 本周完成
|
|||
|
|
5. ⏳ 修改JavaScript版权注释(20分钟)
|
|||
|
|
6. ⏳ 整理文档文件(10分钟)
|
|||
|
|
7. ⏳ 根据实际情况配置Redis密码
|
|||
|
|
|
|||
|
|
### 本月计划
|
|||
|
|
- 参考《项目优化建议报告.md》中的其他优化项
|
|||
|
|
- 补充缺失的功能(Docker配置、单元测试等)
|
|||
|
|
- 编写项目使用文档
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📞 相关文档
|
|||
|
|
|
|||
|
|
- **详细优化建议:** `项目优化建议报告.md`
|
|||
|
|
- **安全配置说明:** `安全配置最终报告.md`
|
|||
|
|
- **项目改造记录:** `项目改造说明.md`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ✅ 完成确认
|
|||
|
|
|
|||
|
|
完成上述所有手动修复项后,请检查:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. 前端编译无错误
|
|||
|
|
cd ruoyi-ui
|
|||
|
|
npm run build:prod
|
|||
|
|
|
|||
|
|
# 2. 后端编译无错误
|
|||
|
|
cd ..
|
|||
|
|
mvn clean package -Dmaven.test.skip=true
|
|||
|
|
|
|||
|
|
# 3. 测试启动
|
|||
|
|
java -jar ry-news-admin/target/ry-news-admin.jar
|
|||
|
|
|
|||
|
|
# 4. 访问测试
|
|||
|
|
前端:http://localhost:80
|
|||
|
|
后端:http://localhost:8080
|
|||
|
|
Druid:http://localhost:8080/druid/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**修复完成时间:** 2025-10-30
|
|||
|
|
**负责人:** AI Assistant
|
|||
|
|
**状态:** ✅ 已完成自动修复,待手动完成剩余项
|
|||
|
|
|
|||
|
|
🎉 核心问题已修复!继续按清单完成剩余工作。
|
|||
|
|
|