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
|
||
**状态:** ✅ 已完成自动修复,待手动完成剩余项
|
||
|
||
🎉 核心问题已修复!继续按清单完成剩余工作。
|
||
|