From 2961d2b0d0d755c996d3f2df1bdf253a4ec0efc7 Mon Sep 17 00:00:00 2001 From: AIGC Developer Date: Thu, 13 Nov 2025 17:01:39 +0800 Subject: [PATCH] chore: update project files --- .claude/settings.local.json | 29 + .gitignore | 3 + SSH_SETUP.md | 39 - UPLOAD_GUIDE.md | 145 --- demo/.claude/settings.local.json | 24 + demo/.dockerignore | 13 - demo/ALIPAY_PAYMENT_TROUBLESHOOTING.md | 144 --- demo/ALIPAY_SETUP_GUIDE.md | 222 ----- demo/API_CALL_LOGIC_CHECK_REPORT.md | 1 - demo/API_DOCUMENTATION.md | 81 ++ demo/API_FIX_SOLUTION.md | 1 - demo/CHECK_CONFIG.md | 72 -- demo/CODE_COMPLETENESS_CHECK_REPORT.md | 1 - demo/CODE_ISSUES_FIXED.md | 66 -- demo/CODE_LOGIC_FIXES.md | 1 - demo/CODE_LOGIC_FIXES_REPORT.md | 1 - demo/CODE_REVIEW_REPORT.md | 117 --- demo/COMPREHENSIVE_CODE_LOGIC_FIXES.md | 1 - demo/CONFIGURATION_GUIDE.md | 306 ------- demo/CONFIG_FIX_REPORT.md | 1 - demo/CONFIG_VALIDATION_REPORT.md | 225 ----- demo/DEEP_CODE_ANALYSIS_REPORT.md | 1 - demo/DEPLOYMENT_CHECKLIST.md | 672 -------------- demo/Dockerfile.backend | 34 - demo/EMAIL_LOGIN_CONFIGURATION_CHECKLIST.md | 348 ------- demo/EMAIL_LOGIN_TEST_CHECKLIST.md | 378 -------- demo/EMAIL_SEND_TROUBLESHOOTING.md | 206 ----- demo/EMAIL_VERIFICATION_LOGIN_GUIDE.md | 283 ------ demo/FIFTH_ROUND_ULTIMATE_CHECK.md | 1 - demo/FINAL_CODE_CHECK_REPORT.md | 1 - demo/FINAL_CODE_LOGIC_AUDIT_REPORT.md | 1 - demo/FINAL_CODE_LOGIC_FIXES_SUMMARY.md | 1 - demo/FINAL_LOGIC_ERROR_FIXES.md | 1 - demo/FINAL_NGINX_NGROK_SETUP.md | 238 ----- demo/FOURTH_ROUND_FINAL_CHECK.md | 1 - demo/FRP_QUICK_START.md | 89 -- demo/GIT_UPLOAD_GUIDE.md | 210 ----- demo/IJPAY_USAGE_GUIDE.md | 236 ----- demo/IMAGE_TO_VIDEO_API_README.md | 303 ------- demo/LINUX_DEPLOYMENT_GUIDE.md | 846 ------------------ demo/LINUX_DEPLOY_COMMANDS.sh | 80 ++ demo/LINUX_DEPLOY_SCRIPT.sh | 76 ++ demo/LOGIC_ERROR_ANALYSIS.md | 1 - demo/LOGIN_CONFIGURATION_GUIDE.md | 9 - demo/LOGIN_FIX_SUMMARY.md | 194 ++++ demo/NGINX_INTRANET_TUNNEL.md | 279 ------ demo/NGINX_REVERSE_PROXY_GUIDE.md | 290 ------ demo/NGROK_CONFIGURATION.md | 184 ---- demo/NGROK_DEPLOYMENT_GUIDE.md | 272 ------ demo/PAYMENT_CONFIGURATION_CHECKLIST.md | 259 ------ demo/POINTS_FREEZE_SYSTEM_README.md | 304 ------- demo/POLLING_QUERY_IMPLEMENTATION.md | 1 - demo/POLLING_SCHEDULE_SUMMARY.md | 1 - demo/PasswordChecker.java | 4 + demo/QUICK_DEPLOY.md | 126 --- demo/README_NGINX.md | 62 -- demo/REAL_API_INTEGRATION_REPORT.md | 1 - demo/RICH_STYLE_IMPLEMENTATION.md | 1 - demo/ROUTE_ANALYSIS.md | 313 +++++++ demo/SES_SENDER_VERIFICATION_GUIDE.md | 9 - demo/SES_TROUBLESHOOTING_GUIDE.md | 112 --- demo/SINGLE_PAGE_EXPERIENCE.md | 1 - demo/SIXTH_ROUND_COMPREHENSIVE_CHECK.md | 1 - demo/STORYBOARD_VIDEO_CODE_REVIEW.md | 1 - demo/SYSTEM_SETTINGS_CLEANUP_GUIDE.md | 1 - demo/TASK_CLEANUP_SYSTEM_README.md | 164 ---- demo/TASK_QUEUE_README.md | 228 ----- demo/TASK_STATUS_CHECK_REPORT.md | 1 - demo/TASK_TO_WORK_FLOW.md | 1 - demo/TENCENT_CONFIG_STATUS.md | 9 - demo/TENCENT_SES_MAIL_INTEGRATION.md | 9 - demo/TENCENT_SES_MAIL_MULTIPLE_RECIPIENTS.md | 9 - demo/TENCENT_SES_PERMISSION_FIX.md | 104 --- demo/TENCENT_SES_STARTUP_CHECKLIST.md | 295 ------ demo/TEXT_TO_VIDEO_API_README.md | 313 ------- demo/TEXT_TO_VIDEO_IMPLEMENTATION_SUMMARY.md | 9 - demo/TEXT_TO_VIDEO_STATUS_REPORT.md | 1 - demo/THIRD_ROUND_LOGIC_CHECK.md | 1 - demo/TRANSACTION_AUDIT.md | 99 -- demo/TRANSACTION_USAGE_REPORT.md | 95 -- demo/TestApiConnection.java | 52 -- demo/UNIREST_MIGRATION.md | 1 - demo/USER_WORKS_SYSTEM_README.md | 183 ---- demo/VIDEO_GENERATION_DIAGNOSTIC.md | 1 - demo/add_bio_column.sql | 7 - demo/backend/Dockerfile | 52 ++ demo/backend/Dockerfile.java21 | 48 + demo/backend/Dockerfile.linux | 54 ++ demo/cancel_image_to_video_task.sql | 64 -- demo/cancel_task.sql | 63 -- demo/check_queue_status.sql | 61 -- demo/cleanup_failed_tasks.sql | 20 - demo/database_baota_20251108_160249.zip | Bin 0 -> 4807 bytes demo/database_baota_deploy/README.md | 269 ++++++ demo/database_baota_deploy/deploy_database.sh | 141 +++ demo/database_baota_deploy/init_database.sql | 467 ++++++++++ .../update_admin_user.sql | 13 + .../宝塔数据库部署指南.md | 224 +++++ .../数据库完整结构-宝塔导入.sql | 370 ++++++++ demo/database_baota_deploy/部署检查清单.md | 227 +++++ demo/database_baota_deploy_.zip | Bin 0 -> 19353 bytes demo/delete_storyboard_tasks.sql | 24 - demo/deploy-linux.sh | 2 + demo/deploy.ps1 | 208 +++-- demo/deploy_baota/API_DOCUMENTATION.md | 80 ++ demo/deploy_baota/README.txt | 74 ++ demo/deploy_baota/ROUTE_ANALYSIS.md | 312 +++++++ .../application-prod.properties.example | 108 +++ .../application-prod.properties.template | 49 + demo/deploy_baota/backend/start.sh | 111 +++ .../frontend/images/backgrounds/1.jpg | Bin 0 -> 13001 bytes .../frontend/images/backgrounds/login.png | Bin 0 -> 868507 bytes .../frontend/images/backgrounds/welcome.jpg | Bin 0 -> 6844970 bytes demo/deploy_baota/frontend/index.html | 22 + demo/deploy_baota/frontend/nginx.conf | 49 + .../static/AdminDashboard-06e8e9fe.css | 1 + .../static/AdminDashboard-9d798574.js | 1 + .../frontend/static/AdminOrders-5631316a.js | 1 + .../frontend/static/AdminOrders-a81c37a8.css | 1 + .../static/ApiManagement-3a040480.css | 1 + .../frontend/static/ApiManagement-fb89c311.js | 1 + .../static/GenerateTaskRecord-92a9d6a2.js | 1 + .../static/GenerateTaskRecord-dae9310e.css | 1 + .../frontend/static/HelloWorld-9bce383a.js | 1 + .../frontend/static/Home-83259a91.js | 4 + .../frontend/static/Home-a1e22924.css | 1 + .../frontend/static/ImageToVideo-5c0d5d27.css | 1 + .../frontend/static/ImageToVideo-75f15638.js | 1 + .../static/ImageToVideoCreate-9f838581.css | 1 + .../static/ImageToVideoCreate-c6d612d8.js | 1 + .../static/ImageToVideoDetail-c4dd8d4c.css | 1 + .../static/ImageToVideoDetail-d95fa7d4.js | 1 + .../frontend/static/Login-7248cf1e.js | 1 + .../frontend/static/Login-7d3f83d7.css | 1 + .../static/MemberManagement-0dafc745.css | 1 + .../static/MemberManagement-2f1d2183.js | 1 + .../frontend/static/MyWorks-23b2263b.css | 1 + .../frontend/static/MyWorks-729e0951.js | 1 + .../frontend/static/OrderCreate-33839111.js | 1 + .../frontend/static/OrderCreate-c5a11b3c.css | 1 + .../frontend/static/OrderDetail-6fefd15e.js | 1 + .../frontend/static/OrderDetail-d72799a7.css | 1 + .../frontend/static/Orders-6c9eab9c.js | 1 + .../frontend/static/Orders-97fa0790.css | 1 + .../static/PaymentCreate-845e7a7d.css | 1 + .../frontend/static/PaymentCreate-bff751b0.js | 1 + .../frontend/static/Payments-77a5186c.js | 1 + .../frontend/static/Payments-f3c3d2e5.css | 1 + .../frontend/static/Profile-7bbbfe27.js | 1 + .../frontend/static/Profile-e7a83453.css | 1 + .../frontend/static/Register-ccda3886.js | 1 + .../frontend/static/Register-db11cb6a.css | 1 + .../static/StoryboardVideo-8f7f2d12.css | 1 + .../static/StoryboardVideo-cef2b309.js | 1 + .../static/StoryboardVideoCreate-1810f4ad.js | 4 + .../static/StoryboardVideoCreate-c9b2f9c1.css | 1 + .../frontend/static/Subscription-109b4630.css | 1 + .../frontend/static/Subscription-466ccfbf.js | 1 + .../static/SystemSettings-7b932206.css | 1 + .../static/SystemSettings-e8892272.js | 1 + .../static/TaskStatusPage-0cb18df2.js | 1 + .../static/TaskStatusPage-7db6b691.css | 1 + .../frontend/static/TextToVideo-af8e3099.css | 1 + .../frontend/static/TextToVideo-fca7208a.js | 1 + .../static/TextToVideoCreate-2daed708.js | 1 + .../static/TextToVideoCreate-dfa9e514.css | 1 + .../frontend/static/VideoDetail-4e02ea27.css | 1 + .../frontend/static/VideoDetail-a2b5ee6f.js | 1 + .../frontend/static/Welcome-02ae9375.css | 1 + .../frontend/static/Welcome-f3d9259c.js | 1 + .../frontend/static/dashboard-93bacc4e.js | 1 + .../frontend/static/element-plus-4a19e5e8.js | 37 + .../frontend/static/imageToVideo-6b02abdd.js | 1 + .../frontend/static/index-2fb4354b.js | 1 + .../frontend/static/index-462509e4.css | 1 + .../frontend/static/members-fa2c2290.js | 1 + .../frontend/static/orders-13d1cb00.js | 1 + .../frontend/static/orders-61e4e2f1.js | 1 + .../frontend/static/payments-ee5e732b.js | 1 + .../static/promptOptimizer-dc3175a2.js | 1 + .../frontend/static/textToVideo-2a4dedda.js | 1 + .../frontend/static/userWorks-78cd305b.js | 1 + .../frontend/static/utils-edfcd65b.js | 6 + .../frontend/static/vue-vendor-164775a6.js | 29 + .../frontend/static/welcome-6f9b345d.js | 1 + demo/docker-compose.yml | 80 -- demo/fix-auto-refresh-test.sh | 37 - demo/fix-jwt-auth-test.sh | 39 - demo/fix-login-loop-test.sh | 45 - demo/fix_database_columns.sql | 40 - demo/fix_storyboard_result_url.sql | 7 - demo/frontend/.claude/settings.local.json | 14 + demo/frontend/.env.development | 3 + demo/frontend/.env.development.vite | 3 + demo/frontend/.env.production | 2 + demo/frontend/.env.production.vite | 4 + demo/frontend/README.md | 449 ---------- demo/frontend/package-lock.json | 381 +++++++- demo/frontend/package.json | 1 + .../public/images/backgrounds/README.md | 23 - .../images/backgrounds/avatar-default.svg | 16 + .../public/images/backgrounds/login-bg.svg | 233 +++++ .../public/images/backgrounds/logo.png | Bin 0 -> 4315 bytes .../public/images/backgrounds/logo.svg | 15 + demo/frontend/src/App-backup.vue | 45 - demo/frontend/src/App.vue | 42 +- demo/frontend/src/api/auth.js | 10 + demo/frontend/src/api/points.js | 2 + demo/frontend/src/api/request.js | 138 ++- demo/frontend/src/api/taskStatus.js | 11 +- demo/frontend/src/api/textToVideo.js | 3 - demo/frontend/src/api/userWorks.js | 5 + demo/frontend/src/components/Footer.vue | 4 + .../src/components/LanguageSwitcher.vue | 71 ++ demo/frontend/src/components/NavBar.vue | 72 +- demo/frontend/src/components/PaymentModal.vue | 8 +- demo/frontend/src/locales/en.js | 227 +++++ demo/frontend/src/locales/index.js | 23 + demo/frontend/src/locales/zh.js | 227 +++++ demo/frontend/src/main.js | 11 +- demo/frontend/src/router/index.js | 13 +- demo/frontend/src/stores/user.js | 9 + demo/frontend/src/utils/apiHelper.js | 5 +- demo/frontend/src/views/AdminDashboard.vue | 168 ++-- demo/frontend/src/views/AdminOrders.vue | 196 ++-- demo/frontend/src/views/ApiManagement.vue | 147 +-- demo/frontend/src/views/BasicTest.vue | 50 -- demo/frontend/src/views/CleanupTest.vue | 338 ------- .../frontend/src/views/GenerateTaskRecord.vue | 451 +++++----- demo/frontend/src/views/Home.vue | 98 +- demo/frontend/src/views/ImageToVideo.vue | 51 +- .../frontend/src/views/ImageToVideoCreate.vue | 116 ++- .../frontend/src/views/ImageToVideoDetail.vue | 19 +- demo/frontend/src/views/Login.vue | 464 ++++++---- demo/frontend/src/views/MemberManagement.vue | 153 ++-- demo/frontend/src/views/MyWorks.vue | 632 ++++++++++--- demo/frontend/src/views/Orders.vue | 44 +- demo/frontend/src/views/Payments.vue | 1 - demo/frontend/src/views/Profile.vue | 89 +- demo/frontend/src/views/SimpleTest.vue | 23 - demo/frontend/src/views/StoryboardVideo.vue | 44 +- .../src/views/StoryboardVideoCreate.vue | 230 +++-- demo/frontend/src/views/Subscription.vue | 153 +++- demo/frontend/src/views/SystemSettings.vue | 326 +++---- demo/frontend/src/views/TermsOfService.vue | 440 +++++++++ demo/frontend/src/views/TestPage.vue | 24 - demo/frontend/src/views/TextToVideo.vue | 51 +- demo/frontend/src/views/TextToVideoCreate.vue | 114 ++- demo/frontend/src/views/VideoDetail.vue | 244 +++-- demo/frontend/src/views/Welcome.vue | 77 +- demo/frontend/vite.config.js | 39 +- demo/frontend/vue.config.js | 34 + demo/init_database.sql | 467 ++++++++++ demo/insert_test_data.ps1 | 53 -- demo/insert_test_data.sql | 19 - demo/nginx/Dockerfile | 16 - demo/nginx/docker-compose.yml | 24 - demo/nginx/nginx.conf | 121 --- demo/pom.xml | 7 + demo/src/.claude/settings.local.json | 16 + .../example/demo/config/OpenApiConfig.java | 188 ++++ .../demo/config/RequestLoggingFilter.java | 102 +++ .../example/demo/config/SecurityConfig.java | 98 +- .../controller/AlipayCallbackController.java | 317 +++++++ .../demo/controller/AlipayController.java | 72 +- .../demo/controller/ApiTestController.java | 197 ---- .../demo/controller/AuthApiController.java | 167 +++- .../controller/GlobalExceptionHandler.java | 77 +- .../controller/HealthCheckController.java | 162 ++++ .../demo/controller/OrderApiController.java | 103 ++- .../demo/controller/OrderController.java | 53 +- .../demo/controller/PaymentApiController.java | 39 +- .../demo/controller/PaymentController.java | 23 +- .../controller/PollingTestController.java | 90 -- .../PromptOptimizerApiController.java | 2 +- .../controller/TaskStatusApiController.java | 179 +++- .../demo/controller/TestController.java | 50 -- .../controller/TextToVideoApiController.java | 5 - .../controller/UserWorkApiController.java | 65 +- .../VerificationCodeController.java | 26 +- .../com/example/demo/dto/MailMessage.java | 4 + .../com/example/demo/model/TaskStatus.java | 4 + .../java/com/example/demo/model/UserWork.java | 3 +- .../demo/repository/TaskQueueRepository.java | 7 + .../demo/repository/TaskStatusRepository.java | 28 + .../demo/repository/UserWorkRepository.java | 6 + .../demo/scheduler/TaskQueueScheduler.java | 23 + .../security/JwtAuthenticationFilter.java | 55 +- .../security/PlainTextPasswordEncoder.java | 4 + .../demo/security/UserDetailsServiceImpl.java | 9 +- .../demo/service/ApiResponseHandler.java | 26 +- .../demo/service/ImageToVideoService.java | 37 +- .../example/demo/service/RealAIService.java | 112 +-- .../demo/service/StoryboardVideoService.java | 124 ++- .../demo/service/TaskQueueService.java | 505 ++++------- .../service/TaskStatusPollingService.java | 38 +- .../demo/service/TextToVideoService.java | 3 - .../example/demo/service/UserWorkService.java | 78 ++ .../demo/service/VerificationCodeService.java | 54 +- .../java/com/example/demo/util/JwtUtils.java | 12 + .../main/resources/application-dev.properties | 12 +- .../resources/application-prod.properties | 53 +- .../src/main/resources/application.properties | 14 +- demo/src/main/resources/data.sql | 134 +-- .../V10__Add_Storyboard_Image_To_Enums.sql | 4 + .../migration/V3__Create_Task_Queue_Table.sql | 5 +- .../V4__Add_Points_Freeze_System.sql | 5 +- .../migration/V5__Create_User_Works_Table.sql | 2 +- .../V6__Create_Task_Status_Table.sql | 4 + .../migration/V7__Add_indexes_task_status.sql | 8 + .../V9__Add_Storyboard_Video_To_Enums.sql | 13 + .../resources/migration_add_created_at.sql | 19 - .../migration_create_image_to_video_tasks.sql | 34 - .../migration_create_text_to_video_tasks.sql | 32 - .../main/resources/order_items_12months.sql | 207 ----- demo/src/main/resources/order_items_fixed.sql | 25 - demo/src/main/resources/orders_12months.sql | 208 ----- .../main/resources/orders_12months_fixed.sql | 265 ------ .../main/resources/orders_12months_new.sql | 270 ------ demo/src/main/resources/payments_12months.sql | 207 ----- demo/src/main/resources/payments_fixed.sql | 24 - .../resources/templates/orders/admin.html | 4 + .../resources/templates/orders/detail.html | 4 + .../main/resources/templates/orders/form.html | 4 + .../main/resources/user_activity_stats.sql | 407 --------- .../example/demo/DemoApplicationTests.java | 13 - .../example/demo/test/PointsFreezeTest.java | 124 --- .../com/example/demo/test/TaskQueueTest.java | 132 --- .../demo/test/UserWorkIntegrationTest.java | 293 ------ demo/src/数据库完整结构-宝塔导入.sql | 370 ++++++++ demo/src/环境变量配置说明-宝塔部署.md | 299 +++++++ demo/start-image-to-video-test.bat | 42 - demo/start-local.bat | 33 + demo/test-api-connection.java | 69 -- demo/test-cleanup.ps1 | 60 -- demo/test_api.py | 28 - demo/test_jwt.py | 36 - demo/test_payment.py | 72 -- demo/update_admin_user.sql | 13 + demo/update_database_schema.sql | 27 - ngrok-config.yml | 16 + test-storyboard-api.ps1 | 24 - test_alipay_connection.py | 86 -- test_api.py | 21 - 344 files changed, 11549 insertions(+), 15941 deletions(-) create mode 100644 .claude/settings.local.json delete mode 100644 SSH_SETUP.md delete mode 100644 UPLOAD_GUIDE.md create mode 100644 demo/.claude/settings.local.json delete mode 100644 demo/.dockerignore delete mode 100644 demo/ALIPAY_PAYMENT_TROUBLESHOOTING.md delete mode 100644 demo/ALIPAY_SETUP_GUIDE.md delete mode 100644 demo/API_CALL_LOGIC_CHECK_REPORT.md create mode 100644 demo/API_DOCUMENTATION.md delete mode 100644 demo/API_FIX_SOLUTION.md delete mode 100644 demo/CHECK_CONFIG.md delete mode 100644 demo/CODE_COMPLETENESS_CHECK_REPORT.md delete mode 100644 demo/CODE_ISSUES_FIXED.md delete mode 100644 demo/CODE_LOGIC_FIXES.md delete mode 100644 demo/CODE_LOGIC_FIXES_REPORT.md delete mode 100644 demo/CODE_REVIEW_REPORT.md delete mode 100644 demo/COMPREHENSIVE_CODE_LOGIC_FIXES.md delete mode 100644 demo/CONFIGURATION_GUIDE.md delete mode 100644 demo/CONFIG_FIX_REPORT.md delete mode 100644 demo/CONFIG_VALIDATION_REPORT.md delete mode 100644 demo/DEEP_CODE_ANALYSIS_REPORT.md delete mode 100644 demo/DEPLOYMENT_CHECKLIST.md delete mode 100644 demo/Dockerfile.backend delete mode 100644 demo/EMAIL_LOGIN_CONFIGURATION_CHECKLIST.md delete mode 100644 demo/EMAIL_LOGIN_TEST_CHECKLIST.md delete mode 100644 demo/EMAIL_SEND_TROUBLESHOOTING.md delete mode 100644 demo/EMAIL_VERIFICATION_LOGIN_GUIDE.md delete mode 100644 demo/FIFTH_ROUND_ULTIMATE_CHECK.md delete mode 100644 demo/FINAL_CODE_CHECK_REPORT.md delete mode 100644 demo/FINAL_CODE_LOGIC_AUDIT_REPORT.md delete mode 100644 demo/FINAL_CODE_LOGIC_FIXES_SUMMARY.md delete mode 100644 demo/FINAL_LOGIC_ERROR_FIXES.md delete mode 100644 demo/FINAL_NGINX_NGROK_SETUP.md delete mode 100644 demo/FOURTH_ROUND_FINAL_CHECK.md delete mode 100644 demo/FRP_QUICK_START.md delete mode 100644 demo/GIT_UPLOAD_GUIDE.md delete mode 100644 demo/IJPAY_USAGE_GUIDE.md delete mode 100644 demo/IMAGE_TO_VIDEO_API_README.md delete mode 100644 demo/LINUX_DEPLOYMENT_GUIDE.md create mode 100644 demo/LINUX_DEPLOY_COMMANDS.sh create mode 100644 demo/LINUX_DEPLOY_SCRIPT.sh delete mode 100644 demo/LOGIC_ERROR_ANALYSIS.md delete mode 100644 demo/LOGIN_CONFIGURATION_GUIDE.md create mode 100644 demo/LOGIN_FIX_SUMMARY.md delete mode 100644 demo/NGINX_INTRANET_TUNNEL.md delete mode 100644 demo/NGINX_REVERSE_PROXY_GUIDE.md delete mode 100644 demo/NGROK_CONFIGURATION.md delete mode 100644 demo/NGROK_DEPLOYMENT_GUIDE.md delete mode 100644 demo/PAYMENT_CONFIGURATION_CHECKLIST.md delete mode 100644 demo/POINTS_FREEZE_SYSTEM_README.md delete mode 100644 demo/POLLING_QUERY_IMPLEMENTATION.md delete mode 100644 demo/POLLING_SCHEDULE_SUMMARY.md delete mode 100644 demo/QUICK_DEPLOY.md delete mode 100644 demo/README_NGINX.md delete mode 100644 demo/REAL_API_INTEGRATION_REPORT.md delete mode 100644 demo/RICH_STYLE_IMPLEMENTATION.md create mode 100644 demo/ROUTE_ANALYSIS.md delete mode 100644 demo/SES_SENDER_VERIFICATION_GUIDE.md delete mode 100644 demo/SES_TROUBLESHOOTING_GUIDE.md delete mode 100644 demo/SINGLE_PAGE_EXPERIENCE.md delete mode 100644 demo/SIXTH_ROUND_COMPREHENSIVE_CHECK.md delete mode 100644 demo/STORYBOARD_VIDEO_CODE_REVIEW.md delete mode 100644 demo/SYSTEM_SETTINGS_CLEANUP_GUIDE.md delete mode 100644 demo/TASK_CLEANUP_SYSTEM_README.md delete mode 100644 demo/TASK_QUEUE_README.md delete mode 100644 demo/TASK_STATUS_CHECK_REPORT.md delete mode 100644 demo/TASK_TO_WORK_FLOW.md delete mode 100644 demo/TENCENT_CONFIG_STATUS.md delete mode 100644 demo/TENCENT_SES_MAIL_INTEGRATION.md delete mode 100644 demo/TENCENT_SES_MAIL_MULTIPLE_RECIPIENTS.md delete mode 100644 demo/TENCENT_SES_PERMISSION_FIX.md delete mode 100644 demo/TENCENT_SES_STARTUP_CHECKLIST.md delete mode 100644 demo/TEXT_TO_VIDEO_API_README.md delete mode 100644 demo/TEXT_TO_VIDEO_IMPLEMENTATION_SUMMARY.md delete mode 100644 demo/TEXT_TO_VIDEO_STATUS_REPORT.md delete mode 100644 demo/THIRD_ROUND_LOGIC_CHECK.md delete mode 100644 demo/TRANSACTION_AUDIT.md delete mode 100644 demo/TRANSACTION_USAGE_REPORT.md delete mode 100644 demo/TestApiConnection.java delete mode 100644 demo/UNIREST_MIGRATION.md delete mode 100644 demo/USER_WORKS_SYSTEM_README.md delete mode 100644 demo/VIDEO_GENERATION_DIAGNOSTIC.md delete mode 100644 demo/add_bio_column.sql create mode 100644 demo/backend/Dockerfile create mode 100644 demo/backend/Dockerfile.java21 create mode 100644 demo/backend/Dockerfile.linux delete mode 100644 demo/cancel_image_to_video_task.sql delete mode 100644 demo/cancel_task.sql delete mode 100644 demo/check_queue_status.sql delete mode 100644 demo/cleanup_failed_tasks.sql create mode 100644 demo/database_baota_20251108_160249.zip create mode 100644 demo/database_baota_deploy/README.md create mode 100644 demo/database_baota_deploy/deploy_database.sh create mode 100644 demo/database_baota_deploy/init_database.sql create mode 100644 demo/database_baota_deploy/update_admin_user.sql create mode 100644 demo/database_baota_deploy/宝塔数据库部署指南.md create mode 100644 demo/database_baota_deploy/数据库完整结构-宝塔导入.sql create mode 100644 demo/database_baota_deploy/部署检查清单.md create mode 100644 demo/database_baota_deploy_.zip delete mode 100644 demo/delete_storyboard_tasks.sql create mode 100644 demo/deploy_baota/API_DOCUMENTATION.md create mode 100644 demo/deploy_baota/README.txt create mode 100644 demo/deploy_baota/ROUTE_ANALYSIS.md create mode 100644 demo/deploy_baota/backend/application-prod.properties.example create mode 100644 demo/deploy_baota/backend/application-prod.properties.template create mode 100644 demo/deploy_baota/backend/start.sh create mode 100644 demo/deploy_baota/frontend/images/backgrounds/1.jpg create mode 100644 demo/deploy_baota/frontend/images/backgrounds/login.png create mode 100644 demo/deploy_baota/frontend/images/backgrounds/welcome.jpg create mode 100644 demo/deploy_baota/frontend/index.html create mode 100644 demo/deploy_baota/frontend/nginx.conf create mode 100644 demo/deploy_baota/frontend/static/AdminDashboard-06e8e9fe.css create mode 100644 demo/deploy_baota/frontend/static/AdminDashboard-9d798574.js create mode 100644 demo/deploy_baota/frontend/static/AdminOrders-5631316a.js create mode 100644 demo/deploy_baota/frontend/static/AdminOrders-a81c37a8.css create mode 100644 demo/deploy_baota/frontend/static/ApiManagement-3a040480.css create mode 100644 demo/deploy_baota/frontend/static/ApiManagement-fb89c311.js create mode 100644 demo/deploy_baota/frontend/static/GenerateTaskRecord-92a9d6a2.js create mode 100644 demo/deploy_baota/frontend/static/GenerateTaskRecord-dae9310e.css create mode 100644 demo/deploy_baota/frontend/static/HelloWorld-9bce383a.js create mode 100644 demo/deploy_baota/frontend/static/Home-83259a91.js create mode 100644 demo/deploy_baota/frontend/static/Home-a1e22924.css create mode 100644 demo/deploy_baota/frontend/static/ImageToVideo-5c0d5d27.css create mode 100644 demo/deploy_baota/frontend/static/ImageToVideo-75f15638.js create mode 100644 demo/deploy_baota/frontend/static/ImageToVideoCreate-9f838581.css create mode 100644 demo/deploy_baota/frontend/static/ImageToVideoCreate-c6d612d8.js create mode 100644 demo/deploy_baota/frontend/static/ImageToVideoDetail-c4dd8d4c.css create mode 100644 demo/deploy_baota/frontend/static/ImageToVideoDetail-d95fa7d4.js create mode 100644 demo/deploy_baota/frontend/static/Login-7248cf1e.js create mode 100644 demo/deploy_baota/frontend/static/Login-7d3f83d7.css create mode 100644 demo/deploy_baota/frontend/static/MemberManagement-0dafc745.css create mode 100644 demo/deploy_baota/frontend/static/MemberManagement-2f1d2183.js create mode 100644 demo/deploy_baota/frontend/static/MyWorks-23b2263b.css create mode 100644 demo/deploy_baota/frontend/static/MyWorks-729e0951.js create mode 100644 demo/deploy_baota/frontend/static/OrderCreate-33839111.js create mode 100644 demo/deploy_baota/frontend/static/OrderCreate-c5a11b3c.css create mode 100644 demo/deploy_baota/frontend/static/OrderDetail-6fefd15e.js create mode 100644 demo/deploy_baota/frontend/static/OrderDetail-d72799a7.css create mode 100644 demo/deploy_baota/frontend/static/Orders-6c9eab9c.js create mode 100644 demo/deploy_baota/frontend/static/Orders-97fa0790.css create mode 100644 demo/deploy_baota/frontend/static/PaymentCreate-845e7a7d.css create mode 100644 demo/deploy_baota/frontend/static/PaymentCreate-bff751b0.js create mode 100644 demo/deploy_baota/frontend/static/Payments-77a5186c.js create mode 100644 demo/deploy_baota/frontend/static/Payments-f3c3d2e5.css create mode 100644 demo/deploy_baota/frontend/static/Profile-7bbbfe27.js create mode 100644 demo/deploy_baota/frontend/static/Profile-e7a83453.css create mode 100644 demo/deploy_baota/frontend/static/Register-ccda3886.js create mode 100644 demo/deploy_baota/frontend/static/Register-db11cb6a.css create mode 100644 demo/deploy_baota/frontend/static/StoryboardVideo-8f7f2d12.css create mode 100644 demo/deploy_baota/frontend/static/StoryboardVideo-cef2b309.js create mode 100644 demo/deploy_baota/frontend/static/StoryboardVideoCreate-1810f4ad.js create mode 100644 demo/deploy_baota/frontend/static/StoryboardVideoCreate-c9b2f9c1.css create mode 100644 demo/deploy_baota/frontend/static/Subscription-109b4630.css create mode 100644 demo/deploy_baota/frontend/static/Subscription-466ccfbf.js create mode 100644 demo/deploy_baota/frontend/static/SystemSettings-7b932206.css create mode 100644 demo/deploy_baota/frontend/static/SystemSettings-e8892272.js create mode 100644 demo/deploy_baota/frontend/static/TaskStatusPage-0cb18df2.js create mode 100644 demo/deploy_baota/frontend/static/TaskStatusPage-7db6b691.css create mode 100644 demo/deploy_baota/frontend/static/TextToVideo-af8e3099.css create mode 100644 demo/deploy_baota/frontend/static/TextToVideo-fca7208a.js create mode 100644 demo/deploy_baota/frontend/static/TextToVideoCreate-2daed708.js create mode 100644 demo/deploy_baota/frontend/static/TextToVideoCreate-dfa9e514.css create mode 100644 demo/deploy_baota/frontend/static/VideoDetail-4e02ea27.css create mode 100644 demo/deploy_baota/frontend/static/VideoDetail-a2b5ee6f.js create mode 100644 demo/deploy_baota/frontend/static/Welcome-02ae9375.css create mode 100644 demo/deploy_baota/frontend/static/Welcome-f3d9259c.js create mode 100644 demo/deploy_baota/frontend/static/dashboard-93bacc4e.js create mode 100644 demo/deploy_baota/frontend/static/element-plus-4a19e5e8.js create mode 100644 demo/deploy_baota/frontend/static/imageToVideo-6b02abdd.js create mode 100644 demo/deploy_baota/frontend/static/index-2fb4354b.js create mode 100644 demo/deploy_baota/frontend/static/index-462509e4.css create mode 100644 demo/deploy_baota/frontend/static/members-fa2c2290.js create mode 100644 demo/deploy_baota/frontend/static/orders-13d1cb00.js create mode 100644 demo/deploy_baota/frontend/static/orders-61e4e2f1.js create mode 100644 demo/deploy_baota/frontend/static/payments-ee5e732b.js create mode 100644 demo/deploy_baota/frontend/static/promptOptimizer-dc3175a2.js create mode 100644 demo/deploy_baota/frontend/static/textToVideo-2a4dedda.js create mode 100644 demo/deploy_baota/frontend/static/userWorks-78cd305b.js create mode 100644 demo/deploy_baota/frontend/static/utils-edfcd65b.js create mode 100644 demo/deploy_baota/frontend/static/vue-vendor-164775a6.js create mode 100644 demo/deploy_baota/frontend/static/welcome-6f9b345d.js delete mode 100644 demo/docker-compose.yml delete mode 100644 demo/fix-auto-refresh-test.sh delete mode 100644 demo/fix-jwt-auth-test.sh delete mode 100644 demo/fix-login-loop-test.sh delete mode 100644 demo/fix_database_columns.sql delete mode 100644 demo/fix_storyboard_result_url.sql create mode 100644 demo/frontend/.claude/settings.local.json create mode 100644 demo/frontend/.env.development create mode 100644 demo/frontend/.env.development.vite create mode 100644 demo/frontend/.env.production create mode 100644 demo/frontend/.env.production.vite delete mode 100644 demo/frontend/README.md delete mode 100644 demo/frontend/public/images/backgrounds/README.md create mode 100644 demo/frontend/public/images/backgrounds/avatar-default.svg create mode 100644 demo/frontend/public/images/backgrounds/login-bg.svg create mode 100644 demo/frontend/public/images/backgrounds/logo.png create mode 100644 demo/frontend/public/images/backgrounds/logo.svg delete mode 100644 demo/frontend/src/App-backup.vue create mode 100644 demo/frontend/src/components/LanguageSwitcher.vue create mode 100644 demo/frontend/src/locales/en.js create mode 100644 demo/frontend/src/locales/index.js create mode 100644 demo/frontend/src/locales/zh.js delete mode 100644 demo/frontend/src/views/BasicTest.vue delete mode 100644 demo/frontend/src/views/CleanupTest.vue delete mode 100644 demo/frontend/src/views/SimpleTest.vue create mode 100644 demo/frontend/src/views/TermsOfService.vue delete mode 100644 demo/frontend/src/views/TestPage.vue create mode 100644 demo/frontend/vue.config.js create mode 100644 demo/init_database.sql delete mode 100644 demo/insert_test_data.ps1 delete mode 100644 demo/insert_test_data.sql delete mode 100644 demo/nginx/Dockerfile delete mode 100644 demo/nginx/docker-compose.yml delete mode 100644 demo/nginx/nginx.conf create mode 100644 demo/src/.claude/settings.local.json create mode 100644 demo/src/main/java/com/example/demo/config/OpenApiConfig.java create mode 100644 demo/src/main/java/com/example/demo/config/RequestLoggingFilter.java create mode 100644 demo/src/main/java/com/example/demo/controller/AlipayCallbackController.java delete mode 100644 demo/src/main/java/com/example/demo/controller/ApiTestController.java create mode 100644 demo/src/main/java/com/example/demo/controller/HealthCheckController.java delete mode 100644 demo/src/main/java/com/example/demo/controller/PollingTestController.java delete mode 100644 demo/src/main/java/com/example/demo/controller/TestController.java create mode 100644 demo/src/main/resources/db/migration/V10__Add_Storyboard_Image_To_Enums.sql create mode 100644 demo/src/main/resources/db/migration/V7__Add_indexes_task_status.sql create mode 100644 demo/src/main/resources/db/migration/V9__Add_Storyboard_Video_To_Enums.sql delete mode 100644 demo/src/main/resources/migration_add_created_at.sql delete mode 100644 demo/src/main/resources/migration_create_image_to_video_tasks.sql delete mode 100644 demo/src/main/resources/migration_create_text_to_video_tasks.sql delete mode 100644 demo/src/main/resources/order_items_12months.sql delete mode 100644 demo/src/main/resources/order_items_fixed.sql delete mode 100644 demo/src/main/resources/orders_12months.sql delete mode 100644 demo/src/main/resources/orders_12months_fixed.sql delete mode 100644 demo/src/main/resources/orders_12months_new.sql delete mode 100644 demo/src/main/resources/payments_12months.sql delete mode 100644 demo/src/main/resources/payments_fixed.sql delete mode 100644 demo/src/main/resources/user_activity_stats.sql delete mode 100644 demo/src/test/java/com/example/demo/DemoApplicationTests.java delete mode 100644 demo/src/test/java/com/example/demo/test/PointsFreezeTest.java delete mode 100644 demo/src/test/java/com/example/demo/test/TaskQueueTest.java delete mode 100644 demo/src/test/java/com/example/demo/test/UserWorkIntegrationTest.java create mode 100644 demo/src/数据库完整结构-宝塔导入.sql create mode 100644 demo/src/环境变量配置说明-宝塔部署.md delete mode 100644 demo/start-image-to-video-test.bat create mode 100644 demo/start-local.bat delete mode 100644 demo/test-api-connection.java delete mode 100644 demo/test-cleanup.ps1 delete mode 100644 demo/test_api.py delete mode 100644 demo/test_jwt.py delete mode 100644 demo/test_payment.py create mode 100644 demo/update_admin_user.sql delete mode 100644 demo/update_database_schema.sql create mode 100644 ngrok-config.yml delete mode 100644 test-storyboard-api.ps1 delete mode 100644 test_alipay_connection.py delete mode 100644 test_api.py diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 0000000..c2e3e0c --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,29 @@ +{ + "permissions": { + "allow": [ + "Bash(netstat:*)", + "Bash(findstr:*)", + "Bash(tasklist:*)", + "Bash(taskkill /F /PID 34568)", + "Bash(powershell \"Stop-Process -Id 34568 -Force\")", + "Bash(mvn clean:*)", + "Bash(cmd /c \"mvn clean\")", + "Bash(dir:*)", + "Bash(nul)", + "Bash(.mvnw.cmd clean package:*)", + "Bash(powershell -Command \"./mvnw.cmd clean package -DskipTests\")", + "Bash(powershell -Command:*)", + "Bash(timeout /t 3 /nobreak)", + "Bash(git rm:*)", + "Bash(if exist .dockerignore del .dockerignore)", + "Bash(if exist Dockerfile del Dockerfile)", + "Bash(if exist nginx.conf del nginx.conf)", + "Bash(if exist Dockerfile.java21 del Dockerfile.java21)", + "Bash(if exist Dockerfile.linux del Dockerfile.linux)", + "Bash(if exist docker-compose.example.yml del docker-compose.example.yml)", + "Bash(if exist nginx rmdir /s /q nginx)" + ], + "deny": [], + "ask": [] + } +} diff --git a/.gitignore b/.gitignore index b36f463..a727b40 100644 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,6 @@ startup.log # 其他 *.jar !mysql-connector-java-8.0.33.jar + +# Windows 保留名占位文件 +nul \ No newline at end of file diff --git a/SSH_SETUP.md b/SSH_SETUP.md deleted file mode 100644 index d80026a..0000000 --- a/SSH_SETUP.md +++ /dev/null @@ -1,39 +0,0 @@ -# SSH密钥配置说明 - -## 您的SSH公钥 -``` -ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFh5WK5GBuW/5xcZv5suVAs5LEFeea2A01zPRP5Slzh1 984523799@qq.com -``` - -## 配置步骤 - -### 1. 将公钥添加到Git服务器 -- 复制上面的公钥内容 -- 登录您的Git服务器管理界面 -- 找到"SSH密钥"或"SSH Keys"设置 -- 添加新的SSH密钥,粘贴公钥内容 -- 保存设置 - -### 2. 测试SSH连接 -```bash -ssh -T git@49.234.3.145 -p 222 -``` - -### 3. 推送代码 -```bash -git push -u origin master -``` - -## 当前状态 -- ✅ SSH密钥已生成 -- ✅ Git仓库已初始化 -- ✅ 代码已提交到本地 -- ⏳ 等待SSH公钥添加到服务器 - -## 如果SSH配置有问题 -可以使用HTTPS方式: -```bash -git remote set-url origin https://49.234.3.145:222/blandarebiter/AIGC.git -git push -u origin master -``` -(需要输入用户名和密码) diff --git a/UPLOAD_GUIDE.md b/UPLOAD_GUIDE.md deleted file mode 100644 index 0e5414d..0000000 --- a/UPLOAD_GUIDE.md +++ /dev/null @@ -1,145 +0,0 @@ -# AIGC项目代码上传指南 - -## 项目概述 -这是一个完整的AIGC(AI Generated Content)项目,包含: -- **前端**: Vue.js 3 + Element Plus + Vite -- **后端**: Spring Boot 3.5.6 + Spring Security + JWT -- **数据库**: MySQL -- **支付**: 支付宝 + PayPal集成 - -## 代码上传方法 - -### 方法一:使用SSH密钥(推荐) - -✅ **SSH密钥已生成**: -- 私钥:`C:\Users\UI\.ssh\id_ed25519` -- 公钥:`C:\Users\UI\.ssh\id_ed25519.pub` - -**您的SSH公钥**: -``` -ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFh5WK5GBuW/5xcZv5suVAs5LEFeea2A01zPRP5Slzh1 984523799@qq.com -``` - -**下一步操作**: -1. **将公钥添加到Git服务器**: - - 复制上面的公钥内容 - - 登录Git服务器管理界面 - - 在SSH密钥设置中添加此公钥 - -2. **推送代码**: - ```bash - git remote set-url origin ssh://git@49.234.3.145:222/blandarebiter/AIGC.git - git push -u origin master - ``` - -### 方法二:使用HTTPS(需要用户名密码) - -```bash -git remote set-url origin https://49.234.3.145:222/blandarebiter/AIGC.git -git push -u origin master -``` - -### 方法三:代码打包上传 - -如果网络连接有问题,可以: - -1. **创建代码压缩包**: - ```bash - # Windows - powershell Compress-Archive -Path "demo" -DestinationPath "AIGC-Project.zip" - - # Linux/Mac - tar -czf AIGC-Project.tar.gz demo/ - ``` - -2. **手动上传到服务器** - -## 项目结构 - -``` -AIGC/ -├── demo/ # 主项目目录 -│ ├── frontend/ # Vue.js前端 -│ │ ├── src/ -│ │ │ ├── views/ # 页面组件 -│ │ │ ├── components/ # 通用组件 -│ │ │ ├── api/ # API接口 -│ │ │ ├── stores/ # Pinia状态管理 -│ │ │ └── router/ # 路由配置 -│ │ └── package.json -│ ├── src/main/java/ # Spring Boot后端 -│ │ └── com/example/demo/ -│ │ ├── controller/ # 控制器 -│ │ ├── service/ # 业务逻辑 -│ │ ├── model/ # 数据模型 -│ │ ├── repository/ # 数据访问 -│ │ └── security/ # 安全配置 -│ ├── pom.xml # Maven配置 -│ └── start.sh # 启动脚本 -└── README.md # 项目说明 -``` - -## 主要功能 - -### 前端功能 -- ✅ 用户登录/注册 -- ✅ 个人主页 -- ✅ 订单管理 -- ✅ 支付记录 -- ✅ 我的作品 -- ✅ 文生视频 -- ✅ 图生视频 -- ✅ 分镜视频 -- ✅ 会员订阅 -- ✅ 管理员后台 - -### 后端功能 -- ✅ JWT认证 -- ✅ 用户管理 -- ✅ 订单系统 -- ✅ 支付集成 -- ✅ 文件上传 -- ✅ 权限控制 - -## 启动说明 - -### 后端启动 -```bash -cd demo -./start.sh -# 或者 -java -jar target/demo-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev -``` - -### 前端启动 -```bash -cd demo/frontend -npm install -npm run dev -``` - -## 测试账号 - -- **普通用户**: 15538239326 / 0627 -- **管理员**: 15538239327 / admin123 -- **测试用户**: 15538239328 / test123 -- **个人主页**: 15538239329 / 123456 - -## 技术栈 - -- **前端**: Vue 3, Element Plus, Vite, Pinia, Vue Router, Axios -- **后端**: Spring Boot 3.5.6, Spring Security, JWT, Spring Data JPA -- **数据库**: MySQL 8.0 -- **支付**: 支付宝SDK, PayPal SDK -- **构建**: Maven, npm - -## 注意事项 - -1. 确保MySQL服务已启动 -2. 配置正确的数据库连接信息 -3. 设置支付网关的API密钥 -4. 确保端口8080和3000未被占用 - -## 联系方式 - -如有问题,请联系开发团队。 diff --git a/demo/.claude/settings.local.json b/demo/.claude/settings.local.json new file mode 100644 index 0000000..4233d7b --- /dev/null +++ b/demo/.claude/settings.local.json @@ -0,0 +1,24 @@ +{ + "permissions": { + "allow": [ + "Bash(mvn clean package:*)", + "Bash(powershell.exe -ExecutionPolicy Bypass -File deploy.ps1)", + "Bash(mvn clean spring-boot:run:*)", + "Bash(where:*)", + "Bash(cmd.exe /c mvnw.cmd clean spring-boot:run -DskipTests)", + "Bash(tasklist:*)", + "Bash(netstat:*)", + "Bash(taskkill:*)", + "Bash(powershell.exe -Command \"cd ''C:\\Users\\UI\\Desktop\\AIGC\\demo''; mvn clean compile -DskipTests\")", + "Bash(npm install:*)", + "Bash(npm cache clean:*)", + "Bash(npm run dev:*)", + "Bash(timeout:*)", + "Bash(powershell.exe -Command \"Start-Sleep -Seconds 5\")", + "Bash(findstr:*)", + "Bash(powershell.exe -Command \"Get-Process node | Stop-Process -Force\")" + ], + "deny": [], + "ask": [] + } +} diff --git a/demo/.dockerignore b/demo/.dockerignore deleted file mode 100644 index a7c747f..0000000 --- a/demo/.dockerignore +++ /dev/null @@ -1,13 +0,0 @@ -target/ -node_modules/ -.git/ -.gitignore -*.md -!README.md -*.log -.idea/ -.vscode/ -*.iml -.env -.env.local - diff --git a/demo/ALIPAY_PAYMENT_TROUBLESHOOTING.md b/demo/ALIPAY_PAYMENT_TROUBLESHOOTING.md deleted file mode 100644 index f574958..0000000 --- a/demo/ALIPAY_PAYMENT_TROUBLESHOOTING.md +++ /dev/null @@ -1,144 +0,0 @@ -# 支付宝支付问题诊断指南 - -## 当前问题 - -根据日志显示,支付宝API调用出现 **"Read timed out"** 错误。 - -## 可能的原因 - -### 1. 网络连接问题 -- **网络延迟过高**:从本地到支付宝沙箱服务器(openapi.alipaydev.com)的网络延迟可能超过60秒 -- **网络不稳定**:网络连接可能间歇性中断 - -### 2. 支付宝沙箱环境问题 -- **服务响应慢**:支付宝沙箱环境可能响应较慢或不稳定 -- **服务暂时不可用**:沙箱环境可能正在维护 - -### 3. 防火墙或代理问题 -- **防火墙阻止**:本地防火墙可能阻止对支付宝API的访问 -- **代理服务器配置**:如果使用代理,可能需要配置代理设置 - -### 4. ngrok隧道问题 -- **隧道过期**:ngrok免费隧道可能已过期或不可用 -- **通知URL不可达**:支付宝无法访问通知URL,可能导致超时 - -## 诊断步骤 - -### 1. 检查网络连接 - -```powershell -# 测试能否连接到支付宝沙箱服务器 -ping openapi.alipaydev.com - -# 测试DNS解析 -nslookup openapi.alipaydev.com -``` - -### 2. 检查ngrok隧道 - -```powershell -# 检查ngrok是否运行 -Get-Process -Name ngrok -ErrorAction SilentlyContinue - -# 访问ngrok控制面板查看隧道状态 -# 浏览器打开: http://127.0.0.1:4040 -``` - -### 3. 测试网络可达性 - -```powershell -# 使用PowerShell测试HTTPS连接 -$url = "https://openapi.alipaydev.com/gateway.do" -try { - $response = Invoke-WebRequest -Uri $url -Method GET -TimeoutSec 10 - Write-Host "连接成功: $($response.StatusCode)" -} catch { - Write-Host "连接失败: $($_.Exception.Message)" -} -``` - -### 4. 检查防火墙设置 - -确保防火墙允许以下连接: -- 出站连接:`openapi.alipaydev.com:443` -- 如果有ngrok,确保ngrok可访问 - -## 解决方案 - -### 方案1: 增加超时时间(已实施) - -已在代码中将超时时间从30秒增加到60秒: -- 连接超时:60秒 -- 读取超时:60秒 - -### 方案2: 检查ngrok配置 - -1. **确认ngrok隧道运行** - ```bash - ngrok http 8080 - ``` - -2. **更新配置文件中的URL** - ```properties - alipay.notify-url=https://YOUR-NGROK-URL/api/payments/alipay/notify - alipay.return-url=https://YOUR-NGROK-URL/api/payments/alipay/return - ``` - -3. **重新编译并重启服务** - -### 方案3: 使用代理或VPN - -如果网络环境限制了对支付宝服务器的访问: -1. 配置HTTP代理 -2. 或使用VPN连接到支持的地区 - -### 方案4: 检查支付宝沙箱配置 - -1. **登录支付宝开放平台**:https://open.alipay.com/ -2. **检查应用配置**: - - 应用ID是否正确 - - 密钥是否正确 - - 网关地址是否为沙箱地址:`https://openapi.alipaydev.com/gateway.do` - -### 方案5: 测试开发模式 - -如果暂时无法连接到支付宝,可以考虑: -1. 在开发环境中模拟支付宝响应 -2. 或暂时跳过支付功能进行其他功能的测试 - -## 当前配置 - -根据 `application-dev.properties`: - -```properties -alipay.app-id=9021000157616562 -alipay.gateway-url=https://openapi.alipaydev.com/gateway.do -alipay.charset=UTF-8 -alipay.sign-type=RSA2 -alipay.notify-url=https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/notify -alipay.return-url=https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/return -``` - -## 日志分析 - -错误日志示例: -``` -Read timed out -``` - -这通常表示: -- 网络连接建立成功 -- 但服务器在60秒内没有响应 -- 可能是服务器负载高或网络延迟 - -## 建议的排查顺序 - -1. ✅ **检查网络连接**:ping openapi.alipaydev.com -2. ✅ **检查ngrok隧道**:确认隧道是否运行 -3. ✅ **查看详细日志**:重启服务后查看新增的诊断信息 -4. ⚠️ **如果问题持续**:考虑使用代理或联系支付宝技术支持 - -## 下一步 - -重新编译项目后,尝试创建支付订单,查看新的诊断日志输出,这将提供更详细的错误信息和解决建议。 - diff --git a/demo/ALIPAY_SETUP_GUIDE.md b/demo/ALIPAY_SETUP_GUIDE.md deleted file mode 100644 index eb00440..0000000 --- a/demo/ALIPAY_SETUP_GUIDE.md +++ /dev/null @@ -1,222 +0,0 @@ -# 支付宝支付集成准备指南 - -## 一、必需准备项 - -### 1. 支付宝商户账号 -- **个人开发者**:注册支付宝开放平台账号(https://open.alipay.com) -- **企业用户**:需要营业执照等企业资质,申请企业支付宝账号 - -### 2. 创建应用并获取配置信息 -登录支付宝开放平台后,需要创建应用并获取以下配置: - -#### 开发环境(沙箱测试) -- **APPID(应用ID)**:`alipay.app-id` -- **应用私钥(Private Key)**:`alipay.private-key` -- **支付宝公钥(Public Key)**:`alipay.public-key` -- **网关地址**:`https://openapi.alipaydev.com/gateway.do`(沙箱) -- **字符集**:`UTF-8` -- **签名方式**:`RSA2` - -#### 生产环境 -- **网关地址**:`https://openapi.alipay.com/gateway.do` -- 其他配置同开发环境 - -### 3. 密钥生成和配置 -支付宝使用RSA2签名,需要生成密钥对: - -#### 方法1:使用支付宝密钥生成工具 -- 下载支付宝官方密钥生成工具 -- 生成密钥对(RSA2,2048位) -- 保存私钥(用于配置 `alipay.private-key`) -- 将公钥上传到支付宝开放平台,获取支付宝公钥(用于配置 `alipay.public-key`) - -#### 方法2:使用OpenSSL生成 -```bash -# 生成私钥 -openssl genrsa -out app_private_key.pem 2048 - -# 生成公钥 -openssl rsa -in app_private_key.pem -pubout -out app_public_key.pem - -# 查看私钥内容(去除头尾,保留中间部分配置到private-key) -cat app_private_key.pem - -# 将app_public_key.pem内容上传到支付宝开放平台 -``` - -**重要**: -- 私钥需要去除 `-----BEGIN RSA PRIVATE KEY-----` 和 `-----END RSA PRIVATE KEY-----` -- 私钥和公钥配置在配置文件中时,需要去掉换行符或使用转义 - -### 4. 配置回调地址 -需要配置两个回调地址: - -#### 异步通知地址(notify-url) -- 用于接收支付宝的支付结果异步通知 -- 必须是公网可访问的HTTPS地址 -- 示例:`https://yourdomain.com/api/payments/alipay/notify` -- **注意**:开发环境可以使用ngrok等内网穿透工具 - -#### 同步返回地址(return-url) -- 用户支付完成后跳转的页面 -- 可以是HTTP或HTTPS地址 -- 示例:`https://yourdomain.com/api/payments/alipay/return` - -### 5. 数据库表准备 -项目已经包含了Payment相关表,确保数据库已创建: -- `payments` 表 -- `orders` 表 - -### 6. Maven依赖(已配置) -项目已包含支付宝SDK依赖: -```xml - - com.github.javen205 - IJPay-AliPay - 2.9.12.1 - -``` - -## 二、配置文件设置 - -### 开发环境配置(application-dev.properties) -```properties -# 支付宝配置 (开发环境 - 沙箱测试) -alipay.app-id=你的沙箱APPID -alipay.private-key=你的应用私钥(去除头尾和换行) -alipay.public-key=支付宝公钥(从开放平台获取) -alipay.gateway-url=https://openapi.alipaydev.com/gateway.do -alipay.charset=UTF-8 -alipay.sign-type=RSA2 -alipay.notify-url=https://your-ngrok-url.ngrok-free.dev/api/payments/alipay/notify -alipay.return-url=https://your-ngrok-url.ngrok-free.dev/api/payments/alipay/return -``` - -### 生产环境配置(application-prod.properties) -```properties -# 支付宝配置 (生产环境) -alipay.app-id=${ALIPAY_APP_ID} -alipay.private-key=${ALIPAY_PRIVATE_KEY} -alipay.public-key=${ALIPAY_PUBLIC_KEY} -alipay.gateway-url=https://openapi.alipay.com/gateway.do -alipay.charset=UTF-8 -alipay.sign-type=RSA2 -alipay.notify-url=${ALIPAY_NOTIFY_URL} -alipay.return-url=${ALIPAY_RETURN_URL} -``` - -## 三、测试步骤 - -### 1. 沙箱测试环境准备 -1. 登录支付宝开放平台:https://open.alipay.com -2. 进入"沙箱环境" -3. 获取沙箱APPID -4. 下载"支付宝密钥生成工具",生成密钥对 -5. 上传公钥到支付宝,获取支付宝公钥 -6. 配置沙箱测试账号(买家账号和卖家账号) - -### 2. 内网穿透配置(开发测试) -如果本地开发,需要使用ngrok等工具暴露本地服务: -```bash -# 安装ngrok -# 启动本地服务(端口8080) -# 使用ngrok暴露 -ngrok http 8080 -# 获取https地址,配置到notify-url和return-url -``` - -### 3. 功能测试 -- 创建支付订单 -- 生成支付宝二维码 -- 使用沙箱账号扫码支付 -- 验证异步通知接收 -- 验证支付状态更新 - -## 四、已实现的功能 - -### 后端接口 -✅ `POST /api/payments/alipay/create` - 创建支付宝支付并生成二维码 -✅ `POST /api/payments/alipay/notify` - 接收支付宝异步通知 -✅ `GET /api/payments/alipay/return` - 处理支付宝同步返回 - -### 前端页面 -✅ 支付模态框组件(PaymentModal.vue) -✅ 订阅页面支付集成(Subscription.vue) - -### 核心服务 -✅ `AlipayService` - 支付宝服务封装 - - `createPayment()` - 创建支付订单 - - `handleNotify()` - 处理异步通知 - - `handleReturn()` - 处理同步返回 - -## 五、常见问题 - -### 1. 签名验证失败 -- 检查私钥和公钥是否正确配置 -- 确认私钥格式正确(去除头尾和换行) -- 确认使用RSA2签名方式 - -### 2. 回调地址无法访问 -- 确保回调地址是公网可访问的HTTPS地址 -- 开发环境可以使用ngrok等内网穿透工具 -- 检查防火墙和服务器配置 - -### 3. 沙箱测试账号 -- 在支付宝开放平台沙箱环境中获取测试账号 -- 使用"沙箱买家"账号进行支付测试 -- 注意:沙箱环境有金额限制 - -### 4. 生产环境上线 -- 申请正式应用(需要审核) -- 配置正式环境的APPID和密钥 -- 确保回调地址使用正式域名 -- 完成商户资质认证 - -## 六、安全检查 - -1. **密钥安全** - - 私钥绝对不能泄露 - - 生产环境使用环境变量或密钥管理服务 - - 不要将密钥提交到代码仓库 - -2. **回调验证** - - 所有回调必须验证签名 - - 验证订单金额和状态 - - 防止重复处理 - -3. **HTTPS要求** - - 生产环境必须使用HTTPS - - 回调地址必须是HTTPS - -## 七、当前项目状态 - -✅ 代码已实现 -✅ Maven依赖已配置 -⚠️ 需要配置支付宝账号和密钥 -⚠️ 需要配置回调地址(开发环境可用ngrok) - -## 八、快速开始 - -1. **注册支付宝开放平台账号** -2. **创建应用获取APPID** -3. **生成密钥对并配置** -4. **配置回调地址(开发环境使用ngrok)** -5. **更新application-dev.properties配置文件** -6. **启动项目测试支付功能** - -## 九、参考文档 - -- 支付宝开放平台:https://open.alipay.com -- 支付宝开发者文档:https://opendocs.alipay.com -- IJPay文档:https://github.com/Javen205/IJPay - - - - - - - - - - - diff --git a/demo/API_CALL_LOGIC_CHECK_REPORT.md b/demo/API_CALL_LOGIC_CHECK_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/API_CALL_LOGIC_CHECK_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/API_DOCUMENTATION.md b/demo/API_DOCUMENTATION.md new file mode 100644 index 0000000..9c39a66 --- /dev/null +++ b/demo/API_DOCUMENTATION.md @@ -0,0 +1,81 @@ +# API 接口文档使用说明 + +## 访问地址 + +启动应用后,可以通过以下地址访问 API 文档: + +- **Swagger UI 界面**: http://localhost:8080/swagger-ui.html +- **API 文档 JSON**: http://localhost:8080/v3/api-docs +- **所有API分组**: http://localhost:8080/v3/api-docs/all + +## 环境地址 + +根据部署环境,访问地址会有所不同: + +- **本地开发**: http://localhost:8080/swagger-ui.html +- **内网环境**: http://172.22.0.1:8080/swagger-ui.html +- **生产环境**: https://vionow.com/swagger-ui.html + +## API 分组 + +文档按功能模块分为以下分组: + +1. **所有API (all)** - 查看所有接口 +2. **认证授权 (auth)** - 用户登录、注册、验证码等 +3. **用户作品 (user-works)** - 用户作品管理 +4. **视频生成 (video-generation)** - 文生视频、图生视频、分镜视频 +5. **支付管理 (payment)** - 订单、支付相关接口 +6. **会员管理 (member)** - 会员订阅、会员管理 +7. **积分系统 (points)** - 积分相关接口 +8. **任务管理 (tasks)** - 任务队列、任务状态 +9. **管理后台 (admin)** - 管理员功能、数据分析 +10. **系统设置 (settings)** - 系统配置、API密钥管理 +11. **公共接口 (public)** - 无需认证的公共接口 + +## 使用 JWT 认证 + +大部分接口需要 JWT 认证,使用步骤如下: + +1. 在 Swagger UI 页面右上角点击 **"Authorize"** 按钮 +2. 在弹出框中输入 JWT Token(格式:`Bearer {token}` 或直接输入 token) +3. 点击 **"Authorize"** 确认 +4. 之后所有请求都会自动携带认证信息 + +### 获取 Token + +1. 调用 `/api/verification/email/send` 发送邮箱验证码 +2. 调用 `/api/auth/login/email` 使用邮箱和验证码登录 +3. 从响应中获取 `token` 字段 +4. 在 Swagger UI 中使用该 token 进行认证 + +## 功能特性 + +- ✅ 自动生成 API 文档 +- ✅ 在线测试接口 +- ✅ 支持 JWT 认证 +- ✅ API 分组管理 +- ✅ 请求/响应示例 +- ✅ 参数说明和验证规则 + +## 注意事项 + +1. **生产环境**: 建议在生产环境中限制 Swagger UI 的访问,或完全禁用 +2. **认证**: 大部分接口需要 JWT Token,请先登录获取 Token +3. **权限**: 部分接口需要管理员权限,普通用户无法访问 +4. **跨域**: 如果遇到跨域问题,请检查 CORS 配置 + +## 禁用 Swagger UI(生产环境) + +如果需要在生产环境禁用 Swagger UI,可以在 `application-prod.properties` 中添加: + +```properties +springdoc.swagger-ui.enabled=false +``` + +或者通过环境变量: + +```bash +export SPRINGDOC_SWAGGER_UI_ENABLED=false +``` + + diff --git a/demo/API_FIX_SOLUTION.md b/demo/API_FIX_SOLUTION.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/API_FIX_SOLUTION.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/CHECK_CONFIG.md b/demo/CHECK_CONFIG.md deleted file mode 100644 index e5e5934..0000000 --- a/demo/CHECK_CONFIG.md +++ /dev/null @@ -1,72 +0,0 @@ -# ✅ 配置检查清单 - -## 已完成的检查 - -### 1. Nginx 配置 ✅ -- ✅ `nginx/nginx.conf` 语法正确 -- ✅ upstream backend 配置正确 -- ✅ proxy_pass 指向正确(`http://backend`) -- ✅ 前端静态文件路径正确(`/usr/share/nginx/html`) -- ✅ API 代理路径正确(`/api/` → `backend:8080`) - -### 2. Docker Compose 配置 ✅ -- ✅ 服务定义完整(mysql, backend, nginx) -- ✅ 网络配置正确(app-network) -- ✅ 卷映射正确 -- ✅ 依赖关系正确(nginx depends_on backend, backend depends_on mysql) - -### 3. Dockerfile 配置 ✅ -- ✅ `Dockerfile.backend` 包含 wget(用于健康检查) -- ✅ `nginx/Dockerfile` 配置正确 -- ✅ 多阶段构建配置正确 - -### 4. 环境变量配置 ✅ -- ✅ docker-compose.yml 中环境变量与 application-prod.properties 匹配 -- ✅ 数据库连接字符串正确 - -### 5. 文件路径检查 ✅ -- ✅ `frontend/dist` 目录存在(前端构建产物) -- ✅ `pom.xml` 存在(后端构建文件) - -## 潜在问题及修复 - -### 已修复的问题 -1. ✅ **后端健康检查缺少 wget** - - 修复:在 Dockerfile.backend 中添加 `RUN apk add --no-cache wget` - -2. ✅ **环境变量不匹配** - - 修复:将 `SPRING_DATASOURCE_*` 改为 `DB_*` 以匹配 application-prod.properties - -## 部署前检查清单 - -在运行 `docker-compose up` 之前,请确保: - -- [ ] 前端已构建:`cd frontend && npm run build` -- [ ] Docker 和 Docker Compose 已安装 -- [ ] 端口 80、8080、3306 未被占用 -- [ ] 有足够的磁盘空间(至少 2GB) - -## 验证命令 - -```bash -# 检查 Docker Compose 配置 -docker-compose config - -# 检查服务状态 -docker-compose ps - -# 查看日志 -docker-compose logs -f nginx -docker-compose logs -f backend - -# 测试 Nginx 配置 -docker exec demo-nginx nginx -t -``` - -## 访问地址 - -部署成功后: -- 🌐 前端:http://localhost -- 🔗 API:http://localhost/api -- 🏥 健康检查:http://localhost/health - diff --git a/demo/CODE_COMPLETENESS_CHECK_REPORT.md b/demo/CODE_COMPLETENESS_CHECK_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/CODE_COMPLETENESS_CHECK_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/CODE_ISSUES_FIXED.md b/demo/CODE_ISSUES_FIXED.md deleted file mode 100644 index ef43ed8..0000000 --- a/demo/CODE_ISSUES_FIXED.md +++ /dev/null @@ -1,66 +0,0 @@ -# 代码问题修复报告 - -## 修复的问题 - -### 1. **严重错误 - SystemSettings.vue 缺少结束标签** ✅ 已修复 -- **问题**: `SystemSettings.vue` 文件缺少 `` 结束标签 -- **位置**: 第373行 -- **影响**: 导致 Vue 编译错误,前端无法正常运行 -- **修复**: 在第373行后添加了 `` 和 `` 标签 - -### 2. **OrderService.java - Switch 语句缺少枚举值处理** ✅ 已修复 -- **问题**: `updateOrderStatus` 方法中的 switch 语句缺少部分枚举值的处理 -- **位置**: `OrderService.java` 第166行 -- **影响**: 当订单状态为 `PENDING`, `CONFIRMED`, `PROCESSING`, `REFUNDED` 时,会触发编译警告 -- **修复**: 为所有 `OrderStatus` 枚举值添加了对应的 case 分支处理 - -### 3. **ImageToVideoTask.java - 潜在的 NullPointerException** ✅ 已修复 -- **问题**: `calculateCost()` 方法中直接使用 `duration`,可能出现空指针解包 -- **位置**: `ImageToVideoTask.java` 第94行 -- **影响**: 当 `duration` 为 null 时,可能出现 NullPointerException -- **修复**: 添加了安全处理,先赋值给局部变量再使用 - -## 发现的警告(非严重) - -### 1. **TencentSesMailService.java** -- `fromName` 变量未使用 - 这是配置变量,保留用于未来扩展 -- 异常处理可以优化为 multicatch - 不影响功能 - -### 2. **PaymentService.java** -- 第319行空指针警告 - 代码已有null检查,实际安全 -- 异常处理可以优化 - 不影响功能 - -### 3. **AlipayService.java** -- 第144行可能的空指针 - 需要在调用前验证 response 是否为 null - -### 4. **前端文件** -- SystemSettings.vue 已修复 -- 其他警告多为代码风格建议,不影响功能 - -## 建议进一步优化 - -1. **AlipayService.java** - 添加 response 的 null 检查 -2. **异常处理优化** - 多个文件可以使用 Java 7+ 的 multicatch 语法 -3. **代码清理** - 移除未使用的导入和方法(标记为未使用本地的方法) -4. **Switch 表达式** - 考虑使用 Java 14+ 的 switch 表达式简化代码 - -## 测试建议 - -1. **前端测试** - 验证 SystemSettings.vue 页面可以正常加载和渲染 -2. **订单状态测试** - 测试所有订单状态的转换是否正常工作 -3. **空值测试** - 测试 duration 为 null 的情况是否处理正确 - -## 已修复文件列表 - -- ✅ `demo/frontend/src/views/SystemSettings.vue` -- ✅ `demo/src/main/java/com/example/demo/service/OrderService.java` -- ✅ `demo/src/main/java/com/example/demo/model/ImageToVideoTask.java` - -## 编译状态 - -所有修复后应能正常编译,建议重新编译验证: - -```bash -.\mvnw.cmd clean package -DskipTests -``` - diff --git a/demo/CODE_LOGIC_FIXES.md b/demo/CODE_LOGIC_FIXES.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/CODE_LOGIC_FIXES.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/CODE_LOGIC_FIXES_REPORT.md b/demo/CODE_LOGIC_FIXES_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/CODE_LOGIC_FIXES_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/CODE_REVIEW_REPORT.md b/demo/CODE_REVIEW_REPORT.md deleted file mode 100644 index e8c2ff8..0000000 --- a/demo/CODE_REVIEW_REPORT.md +++ /dev/null @@ -1,117 +0,0 @@ -# 代码检查报告 - -## 发现的问题 - -### 1. IJPay配置问题 ⚠️ - -**问题**:`AlipayService` 使用 IJPay 的 `AliPayApi`,但 IJPay 可能没有正确配置。 - -**位置**:`AlipayService.java` - -**说明**: -- `AlipayService` 使用 `@Value` 注入配置,但 IJPay 的 `AliPayApi` 可能不会自动读取这些配置 -- IJPay 的 `AliPayApi` 需要显式配置或通过系统属性/配置文件读取 - -**建议**: -- 检查 IJPay 是否需要初始化配置 -- 或者使用 `PaymentConfig.AliPayConfig` 来配置 IJPay - -### 2. 配置文件不一致 ⚠️ - -**问题**:`payment.properties` 中有模板值,但实际配置在 `application-dev.properties` 中。 - -**位置**: -- `payment.properties` - 包含模板值("您的APPID") -- `application-dev.properties` - 包含实际配置 - -**说明**: -- `PaymentConfig` 使用 `@PropertySource("classpath:payment.properties")` -- 但 `AlipayService` 使用 `@Value` 从 `application-dev.properties` 读取配置 -- 这可能导致配置不一致 - -**建议**: -- 统一配置文件路径 -- 或者在 `payment.properties` 中也配置实际值 - -### 3. 异步通知参数获取 ⚠️ - -**问题**:`PaymentController.alipayNotify()` 中参数获取方式可能不正确。 - -**位置**:`PaymentController.java` 第 100-117 行 - -**说明**: -- 使用 `request.getParameterMap()` 获取参数 -- 但支付宝异步通知可能使用 POST 请求体,而不是 URL 参数 -- 应该使用 `AliPayApi.toMap(request)` 来获取参数(如 `AlipayController` 中所示) - -**建议**: -- 使用 IJPay 的 `AliPayApi.toMap(request)` 方法获取参数 -- 或者检查支付宝异步通知的实际参数格式 - -### 4. 未使用的变量警告 ⚠️ - -**问题**:`AlipayService` 中的 `privateKey` 变量未使用。 - -**位置**:`AlipayService.java` 第 33 行 - -**说明**: -- `privateKey` 被注入但未在代码中直接使用 -- IJPay 内部可能需要使用它,但当前代码中未显式使用 - -**建议**: -- 如果 IJPay 内部使用,可以保留 -- 或者添加注释说明 - -### 5. 类型转换警告 ⚠️ - -**问题**:JSON 解析时存在类型转换警告。 - -**位置**:`AlipayService.java` 第 136-137 行 - -**说明**: -- 使用 `objectMapper.readValue(responseBody, Map.class)` 时存在类型转换警告 -- 应该使用 `TypeReference` 或 `MapType` 来避免警告 - -**建议**: -- 使用 `TypeReference` 或 `MapType` 来明确类型 - -## 修复建议 - -### 1. 修复 IJPay 配置 - -检查 IJPay 是否需要显式配置,如果需要,可以创建一个配置类来初始化 IJPay。 - -### 2. 统一配置文件 - -确保所有配置文件中的配置一致,或者统一使用一个配置文件。 - -### 3. 修复异步通知参数获取 - -使用 IJPay 的 `AliPayApi.toMap(request)` 方法获取参数。 - -### 4. 修复类型转换警告 - -使用 `TypeReference` 或 `MapType` 来明确类型。 - -## 代码质量 - -### 优点 -- 代码结构清晰 -- 有良好的日志记录 -- 有重试机制和错误处理 -- 使用了 IJPay 封装 - -### 需要改进 -- 配置文件一致性 -- IJPay 配置初始化 -- 异步通知参数获取方式 -- 类型转换警告 - - - - - - - - - diff --git a/demo/COMPREHENSIVE_CODE_LOGIC_FIXES.md b/demo/COMPREHENSIVE_CODE_LOGIC_FIXES.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/COMPREHENSIVE_CODE_LOGIC_FIXES.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/CONFIGURATION_GUIDE.md b/demo/CONFIGURATION_GUIDE.md deleted file mode 100644 index a154de8..0000000 --- a/demo/CONFIGURATION_GUIDE.md +++ /dev/null @@ -1,306 +0,0 @@ -# 系统配置指南 - -本文档列出了系统中所有需要手动配置的重要配置项。 - -## 📋 配置项分类 - -### 1. 🔐 数据库配置(必须) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# 开发环境(直接配置) -spring.datasource.url=jdbc:mysql://localhost:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true -spring.datasource.username=root -spring.datasource.password=你的数据库密码 - -# 生产环境(使用环境变量) -spring.datasource.url=${DB_URL} -spring.datasource.username=${DB_USERNAME} -spring.datasource.password=${DB_PASSWORD} -``` - -**说明**: -- 开发环境:直接修改配置文件中的数据库连接信息 -- 生产环境:通过环境变量配置,更安全 - ---- - -### 2. 🔑 JWT配置(必须) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# 开发环境 -jwt.secret=你的JWT密钥(至少128位,建议256位) -jwt.expiration=86400000 # 24小时,单位毫秒 - -# 生产环境(使用环境变量) -jwt.secret=${JWT_SECRET} -jwt.expiration=${JWT_EXPIRATION:604800000} # 默认7天 -``` - -**说明**: -- `jwt.secret`: 用于签名JWT token的密钥,**必须修改为强随机字符串** -- `jwt.expiration`: Token过期时间(毫秒) - ---- - -### 3. 🤖 AI API配置(必须) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# Comfly API配置(文生视频、图生视频、分镜视频) -ai.api.base-url=https://ai.comfly.chat -ai.api.key=你的Comfly API密钥 - -# Comfly API配置(文生图) -ai.image.api.base-url=https://ai.comfly.chat -ai.image.api.key=你的Comfly API密钥 -``` - -**说明**: -- 可通过 **API管理页面** 在线修改(推荐) -- 或直接修改配置文件 -- 修改后需要重启应用 - ---- - -### 4. 💰 支付宝配置(可选,如需支付功能) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# 开发环境(沙箱测试) -alipay.app-id=你的支付宝应用ID -alipay.private-key=你的应用私钥(RSA2格式) -alipay.public-key=支付宝公钥(RSA2格式) -alipay.gateway-url=https://openapi-sandbox.dl.alipaydev.com/gateway.do -alipay.notify-url=你的回调通知URL -alipay.return-url=你的支付返回URL - -# 生产环境(使用环境变量) -alipay.app-id=${ALIPAY_APP_ID} -alipay.private-key=${ALIPAY_PRIVATE_KEY} -alipay.public-key=${ALIPAY_PUBLIC_KEY} -alipay.gateway-url=https://openapi.alipay.com/gateway.do -alipay.notify-url=${ALIPAY_NOTIFY_URL} -alipay.return-url=${ALIPAY_RETURN_URL} -``` - -**说明**: -- 开发环境使用支付宝沙箱进行测试 -- 生产环境需要申请正式支付宝应用 -- 私钥和公钥必须是RSA2格式 - ---- - -### 5. 📧 腾讯云SES邮件配置(可选,如需邮件功能) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# 开发环境 -tencent.ses.secret-id=你的腾讯云SecretId -tencent.ses.secret-key=你的腾讯云SecretKey -tencent.ses.region=ap-hongkong -tencent.ses.from-email=你的发件邮箱 -tencent.ses.from-name=AIGC平台 -tencent.ses.template-id=你的邮件模板ID - -# 生产环境(使用环境变量) -tencent.ses.secret-id=${TENCENT_SES_SECRET_ID} -tencent.ses.secret-key=${TENCENT_SES_SECRET_KEY} -tencent.ses.from-email=${TENCENT_SES_FROM_EMAIL} -tencent.ses.template-id=${TENCENT_SES_TEMPLATE_ID} -``` - -**说明**: -- 需要在腾讯云SES控制台创建邮件模板 -- 如果`template-id`为0或未配置,将使用开发模式(仅记录日志) - ---- - -### 6. 🎬 FFmpeg配置(可选,如需视频拼接功能) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# 开发环境 -app.ffmpeg.path=C:/Users/UI/AppData/Local/Microsoft/WinGet/Packages/Gyan.FFmpeg_Microsoft.Winget.Source_8wekyb3d8bbwe/ffmpeg-8.0-full_build/bin/ffmpeg.exe -app.temp.dir=./temp - -# 生产环境(使用环境变量) -app.ffmpeg.path=${FFMPEG_PATH:ffmpeg} # 如果在PATH中,直接使用"ffmpeg" -app.temp.dir=${TEMP_DIR:./temp} -``` - -**说明**: -- `app.ffmpeg.path`: FFmpeg可执行文件路径 - - Windows: 使用完整路径,如 `C:\ffmpeg\bin\ffmpeg.exe` - - Linux/Mac: 如果在PATH中,使用 `ffmpeg`;否则使用完整路径,如 `/usr/bin/ffmpeg` -- `app.temp.dir`: 临时文件目录(用于视频处理) - - 相对路径:基于应用运行目录 - - 绝对路径:如 `/app/temp` 或 `C:\app\temp` - ---- - -### 7. 🖥️ 服务器配置(可选,根据需求调整) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# 服务器端口 -server.port=8080 - -# Tomcat线程池配置(支持并发) -server.tomcat.threads.max=1000 -server.tomcat.threads.min-spare=100 -server.tomcat.max-connections=10000 -server.tomcat.accept-count=500 - -# 请求体大小限制(支持大图片Base64编码) -server.tomcat.max-http-post-size=600MB -spring.servlet.multipart.max-file-size=500MB -spring.servlet.multipart.max-request-size=600MB -``` - -**说明**: -- 根据实际并发需求调整线程池配置 -- 如果不需要处理大文件,可以减小请求体大小限制 - ---- - -### 8. 📊 数据库连接池配置(可选,根据需求调整) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# HikariCP连接池配置 -spring.datasource.hikari.maximum-pool-size=200 -spring.datasource.hikari.minimum-idle=20 -spring.datasource.hikari.idle-timeout=300000 -spring.datasource.hikari.max-lifetime=1200000 -spring.datasource.hikari.connection-timeout=30000 -spring.datasource.hikari.leak-detection-threshold=60000 -``` - -**说明**: -- 根据数据库服务器性能和并发需求调整 -- 默认配置支持50人并发 - ---- - -### 9. 🗄️ JPA配置(开发/生产环境不同) - -**位置**: `application-dev.properties` / `application-prod.properties` - -```properties -# 开发环境 -spring.jpa.hibernate.ddl-auto=update # 自动更新表结构 -spring.jpa.show-sql=true # 显示SQL语句 - -# 生产环境 -spring.jpa.hibernate.ddl-auto=validate # 仅验证,不自动修改 -spring.jpa.show-sql=false # 不显示SQL语句 -``` - -**说明**: -- **生产环境必须使用 `validate`**,避免自动修改数据库结构 -- 开发环境可以使用 `update` 方便开发 - ---- - -## 🚀 快速配置清单 - -### 开发环境必须配置: -- [ ] 数据库连接信息(URL、用户名、密码) -- [ ] JWT密钥(修改为强随机字符串) -- [ ] AI API密钥(Comfly API) - -### 开发环境可选配置: -- [ ] 支付宝沙箱配置(如需测试支付) -- [ ] 腾讯云SES配置(如需测试邮件) -- [ ] FFmpeg路径(如需视频拼接) - -### 生产环境必须配置(通过环境变量): -- [ ] `DB_URL` - 数据库连接URL -- [ ] `DB_USERNAME` - 数据库用户名 -- [ ] `DB_PASSWORD` - 数据库密码 -- [ ] `JWT_SECRET` - JWT密钥 -- [ ] `ALIPAY_APP_ID` - 支付宝应用ID(如需支付) -- [ ] `ALIPAY_PRIVATE_KEY` - 支付宝私钥(如需支付) -- [ ] `ALIPAY_PUBLIC_KEY` - 支付宝公钥(如需支付) -- [ ] `ALIPAY_NOTIFY_URL` - 支付回调URL(如需支付) -- [ ] `ALIPAY_RETURN_URL` - 支付返回URL(如需支付) -- [ ] `TENCENT_SES_SECRET_ID` - 腾讯云SecretId(如需邮件) -- [ ] `TENCENT_SES_SECRET_KEY` - 腾讯云SecretKey(如需邮件) -- [ ] `TENCENT_SES_FROM_EMAIL` - 发件邮箱(如需邮件) -- [ ] `TENCENT_SES_TEMPLATE_ID` - 邮件模板ID(如需邮件) -- [ ] `FFMPEG_PATH` - FFmpeg路径(如需视频拼接) -- [ ] `TEMP_DIR` - 临时文件目录(如需视频拼接) - ---- - -## ⚠️ 安全注意事项 - -1. **不要将生产环境配置提交到代码仓库** - - 使用环境变量或外部配置文件 - - 将敏感信息添加到 `.gitignore` - -2. **JWT密钥必须足够强** - - 至少128位,建议256位 - - 使用随机字符串生成器生成 - -3. **数据库密码** - - 使用强密码 - - 生产环境必须通过环境变量配置 - -4. **API密钥** - - 定期更换 - - 不要泄露给他人 - ---- - -## 📝 配置优先级 - -1. **环境变量** > 配置文件 -2. **application-{profile}.properties** > **application.properties** -3. **外部配置文件** > **classpath配置文件** - ---- - -## 🔄 配置更新方式 - -### 方式1:直接修改配置文件(开发环境) -- 修改 `application-dev.properties` -- 重启应用 - -### 方式2:通过管理页面(推荐) -- **API密钥**:通过"API管理"页面在线修改 -- **会员价格**:通过"系统设置"页面在线修改 - -### 方式3:环境变量(生产环境) -- 设置环境变量 -- 重启应用 - ---- - -## 📞 配置问题排查 - -1. **配置不生效** - - 检查配置文件路径是否正确 - - 检查环境变量是否正确设置 - - 检查是否需要重启应用 - -2. **数据库连接失败** - - 检查数据库服务是否启动 - - 检查连接URL、用户名、密码是否正确 - - 检查防火墙设置 - -3. **API调用失败** - - 检查API密钥是否正确 - - 检查网络连接 - - 查看日志文件获取详细错误信息 - diff --git a/demo/CONFIG_FIX_REPORT.md b/demo/CONFIG_FIX_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/CONFIG_FIX_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/CONFIG_VALIDATION_REPORT.md b/demo/CONFIG_VALIDATION_REPORT.md deleted file mode 100644 index 5414eee..0000000 --- a/demo/CONFIG_VALIDATION_REPORT.md +++ /dev/null @@ -1,225 +0,0 @@ -# ✅ Nginx 反向代理配置验证报告 - -## 📊 验证结果:✅ **配置可用** - -所有配置文件已通过验证,可以正常使用。 - ---- - -## 🔍 详细检查结果 - -### 1. Nginx 配置文件 ✅ - -**文件**: `nginx/nginx.conf` - -**检查项**: -- ✅ 语法正确 -- ✅ upstream backend 配置:`server backend:8080;` -- ✅ 前端静态文件服务:`root /usr/share/nginx/html;` -- ✅ API 代理配置:`location /api/` → `proxy_pass http://backend;` -- ✅ WebSocket 支持:`location /ws/` -- ✅ 健康检查端点:`location /health` -- ✅ Gzip 压缩已启用 -- ✅ 静态资源缓存配置正确 - -**状态**: ✅ **通过** - ---- - -### 2. Docker Compose 配置 ✅ - -**文件**: `docker-compose.yml` - -**检查项**: -- ✅ 服务定义完整(mysql, backend, nginx) -- ✅ 网络配置:`app-network` bridge 模式 -- ✅ 卷映射正确: - - `frontend/dist` → `/usr/share/nginx/html` - - `nginx/nginx.conf` → `/etc/nginx/nginx.conf` -- ✅ 依赖关系: - - `nginx` depends_on `backend` - - `backend` depends_on `mysql` (healthcheck) -- ✅ 环境变量正确: - - `DB_URL`, `DB_USERNAME`, `DB_PASSWORD` - - `SPRING_PROFILES_ACTIVE=prod` -- ✅ 端口映射: - - Nginx: `80:80` - - Backend: `8080:8080` - - MySQL: `3306:3306` - -**状态**: ✅ **通过** - ---- - -### 3. Dockerfile 配置 ✅ - -#### 后端 Dockerfile (`Dockerfile.backend`) - -**检查项**: -- ✅ 多阶段构建(Maven 构建 + JRE 运行) -- ✅ wget 已安装(用于健康检查) -- ✅ 健康检查配置正确 -- ✅ 上传目录已创建 -- ✅ Java 21 运行时 - -**状态**: ✅ **通过** - -#### Nginx Dockerfile (`nginx/Dockerfile`) - -**检查项**: -- ✅ 基于 nginx:alpine -- ✅ 配置文件复制正确 -- ✅ 目录创建完整 -- ✅ 端口暴露正确 - -**状态**: ✅ **通过** - ---- - -### 4. 环境变量配置 ✅ - -**文件**: `application-prod.properties` vs `docker-compose.yml` - -**检查项**: -- ✅ 环境变量名称匹配: - - `${DB_URL}` ← `DB_URL` - - `${DB_USERNAME}` ← `DB_USERNAME` - - `${DB_PASSWORD}` ← `DB_PASSWORD` -- ✅ 数据库连接字符串格式正确 -- ✅ Spring Profile 配置正确 - -**状态**: ✅ **通过** - ---- - -### 5. 文件路径检查 ✅ - -**检查项**: -- ✅ `frontend/dist` 目录存在 -- ✅ `pom.xml` 存在 -- ✅ `nginx/nginx.conf` 存在 -- ✅ `Dockerfile.backend` 存在 -- ✅ `nginx/Dockerfile` 存在 - -**状态**: ✅ **通过** - ---- - -### 6. Docker 环境检查 ✅ - -**检查项**: -- ✅ Docker 已安装:v28.4.0 -- ✅ Docker Compose 已安装:v2.39.2 -- ✅ Docker Compose 配置验证通过 -- ✅ 所有服务定义正确(mysql, backend, nginx) - -**状态**: ✅ **通过** - ---- - -## 🔧 已修复的问题 - -### 1. 后端健康检查工具缺失 -- **问题**: Alpine 镜像默认没有 wget -- **修复**: 在 Dockerfile.backend 中添加 `RUN apk add --no-cache wget` - -### 2. 环境变量不匹配 -- **问题**: docker-compose.yml 使用 `SPRING_DATASOURCE_*`,但 application-prod.properties 期望 `DB_*` -- **修复**: 统一使用 `DB_URL`, `DB_USERNAME`, `DB_PASSWORD` - -### 3. Docker Compose 版本警告 -- **问题**: `version: '3.8'` 在新版本中已过时 -- **修复**: 移除 version 字段 - ---- - -## 🚀 部署前检查清单 - -在运行 `docker-compose up` 之前: - -- [x] ✅ 所有配置文件语法正确 -- [x] ✅ 环境变量匹配 -- [x] ✅ Docker 和 Docker Compose 已安装 -- [ ] ⚠️ 前端已构建:`cd frontend && npm run build` -- [ ] ⚠️ 端口 80、8080、3306 未被占用 -- [ ] ⚠️ 有足够的磁盘空间(至少 2GB) - ---- - -## 📝 部署命令 - -### 方式一:使用部署脚本(推荐) - -**Windows**: -```powershell -.\deploy.ps1 -``` - -**Linux/Mac**: -```bash -chmod +x deploy.sh -./deploy.sh -``` - -### 方式二:手动部署 - -```bash -# 1. 构建前端 -cd frontend -npm install -npm run build -cd .. - -# 2. 启动所有服务 -docker-compose up -d --build - -# 3. 查看日志 -docker-compose logs -f -``` - ---- - -## 🌐 访问地址 - -部署成功后: -- 🌐 **前端**: http://localhost -- 🔗 **API**: http://localhost/api -- 🏥 **健康检查**: http://localhost/health - ---- - -## 🧪 验证命令 - -```bash -# 检查服务状态 -docker-compose ps - -# 查看日志 -docker-compose logs -f nginx -docker-compose logs -f backend - -# 测试 Nginx 配置 -docker exec demo-nginx nginx -t - -# 测试健康检查 -curl http://localhost/health -``` - ---- - -## ✅ 总结 - -**配置状态**: ✅ **完全可用** - -所有配置文件已验证通过,可以直接使用 Docker Compose 进行部署。 - -**建议**: -1. 先构建前端:`cd frontend && npm run build` -2. 然后启动服务:`docker-compose up -d --build` -3. 访问 http://localhost 验证部署 - ---- - -**生成时间**: 2025-11-03 -**验证工具**: Docker Compose v2.39.2 - diff --git a/demo/DEEP_CODE_ANALYSIS_REPORT.md b/demo/DEEP_CODE_ANALYSIS_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/DEEP_CODE_ANALYSIS_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/DEPLOYMENT_CHECKLIST.md b/demo/DEPLOYMENT_CHECKLIST.md deleted file mode 100644 index fa8cdef..0000000 --- a/demo/DEPLOYMENT_CHECKLIST.md +++ /dev/null @@ -1,672 +0,0 @@ -# 🚀 项目上线部署准备清单 - -本文档提供了项目上线前的完整准备清单和部署步骤。 - -## 📋 一、服务器环境准备 - -### 1.1 服务器要求 - -**最低配置:** -- CPU: 4核 -- 内存: 8GB -- 磁盘: 100GB SSD -- 带宽: 10Mbps - -**推荐配置(支持50人并发):** -- CPU: 4核 -- 内存: 8GB -- 磁盘: 100GB+ SSD -- 带宽: 20Mbps - -### 1.2 操作系统 - -- **Linux**: Ubuntu 20.04+ / CentOS 7+ / Debian 11+ -- **Windows Server**: Windows Server 2019+ - -### 1.3 必需软件安装 - -```bash -# Java 21 (必需) -sudo apt update -sudo apt install openjdk-21-jdk - -# 验证安装 -java -version - -# MySQL 8.0+ (必需) -sudo apt install mysql-server -sudo systemctl start mysql -sudo systemctl enable mysql - -# FFmpeg (视频拼接功能需要) -# Ubuntu/Debian -sudo apt install ffmpeg - -# CentOS/RHEL -sudo yum install epel-release -sudo yum install ffmpeg - -# 验证安装 -ffmpeg -version - -# Nginx (反向代理,推荐) -sudo apt install nginx - -# Maven (构建项目) -sudo apt install maven -``` - -### 1.4 目录结构准备 - -```bash -# 创建应用目录 -sudo mkdir -p /app/aigc-platform -sudo mkdir -p /app/aigc-platform/logs -sudo mkdir -p /app/aigc-platform/uploads -sudo mkdir -p /app/aigc-platform/temp -sudo mkdir -p /app/aigc-platform/config - -# 设置权限 -sudo chown -R $USER:$USER /app/aigc-platform -chmod -R 755 /app/aigc-platform -``` - ---- - -## 🗄️ 二、数据库准备 - -### 2.1 创建数据库 - -```sql --- 登录MySQL -mysql -u root -p - --- 创建数据库 -CREATE DATABASE aigc_platform CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - --- 创建用户(推荐) -CREATE USER 'aigc_user'@'localhost' IDENTIFIED BY '强密码'; -GRANT ALL PRIVILEGES ON aigc_platform.* TO 'aigc_user'@'localhost'; -FLUSH PRIVILEGES; - --- 退出 -EXIT; -``` - -### 2.2 数据库配置优化 - -编辑 `/etc/mysql/mysql.conf.d/mysqld.cnf`: - -```ini -[mysqld] -# 字符集 -character-set-server=utf8mb4 -collation-server=utf8mb4_unicode_ci - -# 连接数 -max_connections=500 -max_user_connections=400 - -# 缓冲池(根据内存调整,建议为内存的50-70%) -# 8GB内存服务器建议设置为2-4G -innodb_buffer_pool_size=2G - -# 日志 -slow_query_log=1 -slow_query_log_file=/var/log/mysql/slow-query.log -long_query_time=2 -``` - -重启MySQL: -```bash -sudo systemctl restart mysql -``` - ---- - -## ⚙️ 三、环境变量配置 - -### 3.1 创建环境变量文件 - -创建 `/app/aigc-platform/config/.env`: - -```bash -# 数据库配置 -export DB_URL="jdbc:mysql://localhost:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true" -export DB_USERNAME="aigc_user" -export DB_PASSWORD="你的数据库密码" - -# JWT配置 -export JWT_SECRET="生成一个至少128位的随机字符串" -export JWT_EXPIRATION="604800000" - -# AI API配置(可通过管理页面修改,但建议先配置) -export AI_API_BASE_URL="https://ai.comfly.chat" -export AI_API_KEY="你的Comfly API密钥" -export AI_IMAGE_API_BASE_URL="https://ai.comfly.chat" -export AI_IMAGE_API_KEY="你的Comfly API密钥(文生图)" - -# 支付宝配置(如需支付功能) -export ALIPAY_APP_ID="你的支付宝应用ID" -export ALIPAY_PRIVATE_KEY="你的应用私钥(RSA2格式,完整内容)" -export ALIPAY_PUBLIC_KEY="支付宝公钥(RSA2格式,完整内容)" -export ALIPAY_NOTIFY_URL="https://yourdomain.com/api/payments/alipay/notify" -export ALIPAY_RETURN_URL="https://yourdomain.com/api/payments/alipay/return" - -# 腾讯云SES配置(如需邮件功能) -export TENCENT_SES_SECRET_ID="你的SecretId" -export TENCENT_SES_SECRET_KEY="你的SecretKey" -export TENCENT_SES_FROM_EMAIL="你的发件邮箱" -export TENCENT_SES_TEMPLATE_ID="你的邮件模板ID" - -# 文件路径配置 -export FFMPEG_PATH="/usr/bin/ffmpeg" -export TEMP_DIR="/app/aigc-platform/temp" -export UPLOAD_PATH="/app/aigc-platform/uploads" -export LOG_FILE_PATH="/app/aigc-platform/logs/application.log" -``` - -### 3.2 生成JWT密钥 - -```bash -# 方法1:使用OpenSSL -openssl rand -base64 64 - -# 方法2:使用Python -python3 -c "import secrets; print(secrets.token_urlsafe(64))" - -# 方法3:在线生成 -# 访问 https://www.random.org/strings/ -``` - -### 3.3 加载环境变量 - -```bash -# 编辑 ~/.bashrc 或 ~/.profile -echo "source /app/aigc-platform/config/.env" >> ~/.bashrc -source ~/.bashrc - -# 或创建 systemd service 时直接加载 -``` - ---- - -## 📦 四、项目构建与部署 - -### 4.1 构建项目 - -```bash -# 进入项目目录 -cd /path/to/AIGC/demo - -# 清理并打包(跳过测试) -./mvnw clean package -DskipTests - -# 或使用Maven -mvn clean package -DskipTests - -# 打包后的JAR文件位置 -# target/demo-0.0.1-SNAPSHOT.jar -``` - -### 4.2 上传文件到服务器 - -```bash -# 使用SCP上传 -scp target/demo-0.0.1-SNAPSHOT.jar user@server:/app/aigc-platform/ - -# 或使用FTP/SFTP工具 -``` - -### 4.3 前端构建 - -```bash -# 进入前端目录 -cd frontend - -# 安装依赖(如果还没有) -npm install - -# 构建生产版本 -npm run build - -# 构建后的文件在 dist/ 目录 -# 需要配置Nginx指向 dist/ 目录 -``` - ---- - -## 🔧 五、应用配置 - -### 5.1 创建生产环境配置文件 - -在服务器上创建 `/app/aigc-platform/config/application-prod.properties`: - -```properties -# 激活生产环境配置 -spring.profiles.active=prod - -# 数据库配置(使用环境变量) -spring.datasource.url=${DB_URL} -spring.datasource.username=${DB_USERNAME} -spring.datasource.password=${DB_PASSWORD} - -# JWT配置 -jwt.secret=${JWT_SECRET} -jwt.expiration=${JWT_EXPIRATION:604800000} - -# 支付宝配置 -alipay.app-id=${ALIPAY_APP_ID} -alipay.private-key=${ALIPAY_PRIVATE_KEY} -alipay.public-key=${ALIPAY_PUBLIC_KEY} -alipay.gateway-url=https://openapi.alipay.com/gateway.do -alipay.notify-url=${ALIPAY_NOTIFY_URL} -alipay.return-url=${ALIPAY_RETURN_URL} - -# 腾讯云SES配置 -tencent.ses.secret-id=${TENCENT_SES_SECRET_ID} -tencent.ses.secret-key=${TENCENT_SES_SECRET_KEY} -tencent.ses.from-email=${TENCENT_SES_FROM_EMAIL} -tencent.ses.template-id=${TENCENT_SES_TEMPLATE_ID} - -# 文件路径 -app.ffmpeg.path=${FFMPEG_PATH:ffmpeg} -app.temp.dir=${TEMP_DIR:./temp} -app.upload.path=${UPLOAD_PATH:./uploads} - -# 日志 -logging.file.name=${LOG_FILE_PATH:./logs/application.log} -``` - -### 5.2 创建Systemd服务(Linux) - -创建 `/etc/systemd/system/aigc-platform.service`: - -```ini -[Unit] -Description=AIGC Platform Application -After=network.target mysql.service - -[Service] -Type=simple -User=your-user -WorkingDirectory=/app/aigc-platform -EnvironmentFile=/app/aigc-platform/config/.env -ExecStart=/usr/bin/java -jar \ - -Xms1g \ - -Xmx4g \ - -XX:+UseG1GC \ - -XX:MaxGCPauseMillis=200 \ - -Dspring.profiles.active=prod \ - -Dspring.config.location=file:/app/aigc-platform/config/application-prod.properties \ - /app/aigc-platform/demo-0.0.1-SNAPSHOT.jar -Restart=always -RestartSec=10 -StandardOutput=journal -StandardError=journal -SyslogIdentifier=aigc-platform - -[Install] -WantedBy=multi-user.target -``` - -启动服务: -```bash -sudo systemctl daemon-reload -sudo systemctl enable aigc-platform -sudo systemctl start aigc-platform -sudo systemctl status aigc-platform -``` - -查看日志: -```bash -sudo journalctl -u aigc-platform -f -``` - ---- - -## 🌐 六、Nginx反向代理配置 - -### 6.1 创建Nginx配置 - -创建 `/etc/nginx/sites-available/aigc-platform`: - -```nginx -upstream aigc_backend { - server localhost:8080; - keepalive 32; -} - -server { - listen 80; - server_name yourdomain.com www.yourdomain.com; - - # 重定向到HTTPS - return 301 https://$server_name$request_uri; -} - -server { - listen 443 ssl http2; - server_name yourdomain.com www.yourdomain.com; - - # SSL证书配置 - ssl_certificate /path/to/your/cert.pem; - ssl_certificate_key /path/to/your/key.pem; - ssl_protocols TLSv1.2 TLSv1.3; - ssl_ciphers HIGH:!aNULL:!MD5; - ssl_prefer_server_ciphers on; - - # 前端静态文件 - root /path/to/frontend/dist; - index index.html; - - # 前端路由 - location / { - try_files $uri $uri/ /index.html; - } - - # 后端API代理 - location /api/ { - proxy_pass http://aigc_backend; - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection 'upgrade'; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_cache_bypass $http_upgrade; - - # 超时设置 - proxy_connect_timeout 300s; - proxy_send_timeout 300s; - proxy_read_timeout 300s; - } - - # 文件上传代理(支持大文件) - location /uploads/ { - proxy_pass http://aigc_backend; - proxy_request_buffering off; - client_max_body_size 500M; - proxy_connect_timeout 300s; - proxy_send_timeout 300s; - proxy_read_timeout 300s; - } - - # 日志 - access_log /var/log/nginx/aigc-platform-access.log; - error_log /var/log/nginx/aigc-platform-error.log; -} -``` - -启用配置: -```bash -sudo ln -s /etc/nginx/sites-available/aigc-platform /etc/nginx/sites-enabled/ -sudo nginx -t -sudo systemctl reload nginx -``` - -### 6.2 SSL证书(Let's Encrypt) - -```bash -# 安装Certbot -sudo apt install certbot python3-certbot-nginx - -# 获取证书 -sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com - -# 自动续期 -sudo certbot renew --dry-run -``` - ---- - -## 🔒 七、安全配置 - -### 7.1 防火墙配置 - -```bash -# UFW (Ubuntu) -sudo ufw allow 22/tcp -sudo ufw allow 80/tcp -sudo ufw allow 443/tcp -sudo ufw enable - -# Firewalld (CentOS) -sudo firewall-cmd --permanent --add-service=ssh -sudo firewall-cmd --permanent --add-service=http -sudo firewall-cmd --permanent --add-service=https -sudo firewall-cmd --reload -``` - -### 7.2 数据库安全 - -```sql --- 删除匿名用户 -DELETE FROM mysql.user WHERE User=''; - --- 禁止root远程登录(如果不需要) -DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1'); - --- 刷新权限 -FLUSH PRIVILEGES; -``` - -### 7.3 文件权限 - -```bash -# 配置文件权限 -chmod 600 /app/aigc-platform/config/.env -chmod 600 /app/aigc-platform/config/application-prod.properties - -# 日志目录权限 -chmod 755 /app/aigc-platform/logs -``` - ---- - -## 📊 八、监控与日志 - -### 8.1 日志管理 - -```bash -# 配置日志轮转 -sudo nano /etc/logrotate.d/aigc-platform - -# 内容: -/app/aigc-platform/logs/*.log { - daily - rotate 30 - compress - delaycompress - missingok - notifempty - create 0644 your-user your-user -} -``` - -### 8.2 监控脚本 - -创建 `/app/aigc-platform/scripts/health-check.sh`: - -```bash -#!/bin/bash -HEALTH_URL="http://localhost:8080/api/health" -RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" $HEALTH_URL) - -if [ $RESPONSE -ne 200 ]; then - echo "Health check failed: $RESPONSE" - systemctl restart aigc-platform -fi -``` - -添加到crontab: -```bash -# 每5分钟检查一次 -*/5 * * * * /app/aigc-platform/scripts/health-check.sh -``` - ---- - -## ✅ 九、上线前检查清单 - -### 9.1 配置检查 - -- [ ] 数据库连接配置正确 -- [ ] JWT密钥已生成并配置 -- [ ] AI API密钥已配置 -- [ ] 支付宝配置(如需要) -- [ ] 腾讯云SES配置(如需要) -- [ ] FFmpeg路径正确 -- [ ] 文件上传目录权限正确 -- [ ] 日志目录权限正确 - -### 9.2 功能测试 - -- [ ] 用户注册/登录 -- [ ] 文生视频功能 -- [ ] 图生视频功能 -- [ ] 分镜视频功能 -- [ ] 支付功能(如需要) -- [ ] 邮件发送(如需要) -- [ ] 文件上传/下载 -- [ ] 视频拼接功能 - -### 9.3 性能测试 - -- [ ] 并发测试(建议使用JMeter) -- [ ] 数据库连接池测试 -- [ ] 内存使用监控 -- [ ] CPU使用监控 -- [ ] 磁盘空间监控 - -### 9.4 安全检查 - -- [ ] 防火墙已配置 -- [ ] SSL证书已安装 -- [ ] 敏感信息使用环境变量 -- [ ] 数据库用户权限最小化 -- [ ] 文件权限已设置 - -### 9.5 备份策略 - -- [ ] 数据库自动备份脚本 -- [ ] 文件上传目录备份 -- [ ] 配置文件备份 -- [ ] 备份恢复测试 - ---- - -## 🔄 十、部署流程 - -### 10.1 首次部署 - -```bash -# 1. 准备服务器环境 -# 2. 安装必需软件 -# 3. 配置数据库 -# 4. 配置环境变量 -# 5. 构建项目 -# 6. 上传文件 -# 7. 配置Nginx -# 8. 启动服务 -# 9. 测试功能 -# 10. 配置监控 -``` - -### 10.2 更新部署 - -```bash -# 1. 备份当前版本 -cp demo-0.0.1-SNAPSHOT.jar demo-0.0.1-SNAPSHOT.jar.backup - -# 2. 停止服务 -sudo systemctl stop aigc-platform - -# 3. 上传新版本 -scp target/demo-0.0.1-SNAPSHOT.jar user@server:/app/aigc-platform/ - -# 4. 启动服务 -sudo systemctl start aigc-platform - -# 5. 检查状态 -sudo systemctl status aigc-platform -sudo journalctl -u aigc-platform -f -``` - ---- - -## 🆘 十一、常见问题排查 - -### 11.1 应用无法启动 - -```bash -# 查看日志 -sudo journalctl -u aigc-platform -n 100 - -# 检查Java版本 -java -version - -# 检查端口占用 -sudo netstat -tlnp | grep 8080 - -# 检查环境变量 -env | grep DB_ -``` - -### 11.2 数据库连接失败 - -```bash -# 测试数据库连接 -mysql -h localhost -u aigc_user -p aigc_platform - -# 检查MySQL服务 -sudo systemctl status mysql - -# 检查防火墙 -sudo ufw status -``` - -### 11.3 文件上传失败 - -```bash -# 检查目录权限 -ls -la /app/aigc-platform/uploads - -# 检查磁盘空间 -df -h - -# 检查Nginx配置 -sudo nginx -t -``` - ---- - -## 📞 十二、技术支持 - -如遇到问题,请检查: -1. 应用日志:`/app/aigc-platform/logs/application.log` -2. 系统日志:`sudo journalctl -u aigc-platform` -3. Nginx日志:`/var/log/nginx/aigc-platform-error.log` -4. MySQL日志:`/var/log/mysql/error.log` - ---- - -## 📝 十三、维护计划 - -### 日常维护 - -- **每日**: 检查日志、监控系统资源 -- **每周**: 检查备份、清理临时文件 -- **每月**: 更新依赖、安全补丁 - -### 定期任务 - -- **数据库备份**: 每天凌晨2点 -- **日志清理**: 每天凌晨4点 -- **任务清理**: 每天凌晨4点(已配置定时任务) - ---- - -**祝部署顺利!** 🎉 - diff --git a/demo/Dockerfile.backend b/demo/Dockerfile.backend deleted file mode 100644 index 6aa7346..0000000 --- a/demo/Dockerfile.backend +++ /dev/null @@ -1,34 +0,0 @@ -# 构建阶段 -FROM maven:3.9-eclipse-temurin-21 AS build -WORKDIR /app - -# 复制 pom.xml 和源代码 -COPY pom.xml . -COPY src ./src - -# 构建应用 -RUN mvn clean package -DskipTests - -# 运行阶段 -FROM eclipse-temurin:21-jre-alpine -WORKDIR /app - -# 安装wget用于健康检查 -RUN apk add --no-cache wget - -# 创建上传目录 -RUN mkdir -p /app/uploads - -# 复制构建的 JAR 文件 -COPY --from=build /app/target/demo-0.0.1-SNAPSHOT.jar app.jar - -# 暴露端口 -EXPOSE 8080 - -# 健康检查 -HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ - CMD wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1 - -# 启动应用 -ENTRYPOINT ["java", "-jar", "app.jar"] - diff --git a/demo/EMAIL_LOGIN_CONFIGURATION_CHECKLIST.md b/demo/EMAIL_LOGIN_CONFIGURATION_CHECKLIST.md deleted file mode 100644 index c3c8d5b..0000000 --- a/demo/EMAIL_LOGIN_CONFIGURATION_CHECKLIST.md +++ /dev/null @@ -1,348 +0,0 @@ -# 邮件登录模块配置清单 - -## 一、已配置项 ✅ - -### 1. 开发环境配置(application-dev.properties) -- ✅ `tencent.ses.secret-id` - SecretID(已配置) -- ✅ `tencent.ses.secret-key` - SecretKey(已配置) -- ✅ `tencent.ses.region` - 服务区域(ap-beijing) -- ✅ `tencent.ses.from-email` - 发信地址(newletter@vionow.com) -- ✅ `tencent.ses.from-name` - 发件人名称(AIGC平台) -- ✅ `tencent.ses.template-id` - 模板ID(154360,生产模式) - -### 2. 代码实现 -- ✅ 邮箱验证码登录接口(`/api/auth/login/email`) -- ✅ 发送验证码接口(`/api/verification/email/send`) -- ✅ 验证码服务(VerificationCodeService) -- ✅ 腾讯云SES邮件服务(TencentSesMailService) -- ✅ 前端登录页面(Login.vue) -- ✅ 用户名密码登录已禁用 - ---- - -## 二、需要检查/更新项 ⚠️ - -### 1. 腾讯云SES服务权限检查 ⚠️ **重要** - -**当前配置的账号信息:** -- 主账号ID: `100040185043` -- 用户名: `test` -- SecretID: `AKIDXw8HBtNfjdJm480xljV4QZUDi05wa0DE` -- SecretKey: `tZyHMDsKadS4ScZhhU3PYUErGUVIqBIB` - -**需要确认:** -- [ ] **SecretID/SecretKey 是否有效** - - 检查密钥是否过期或被撤销 - - 访问:https://console.cloud.tencent.com/cam/capi - -- [ ] **是否有SES服务访问权限** - - 子账号需要有SES(邮件推送)服务的访问权限 - - 如果没有权限,需要在主账号中授权 - -**检查步骤:** -1. 登录腾讯云控制台 -2. 进入"访问管理" → "API密钥管理" -3. 检查密钥状态 -4. 检查子账号权限策略 - ---- - -### 2. 发信地址验证 ⚠️ **重要(生产环境必需)** - -**当前配置:** -- 发信地址: `newletter@vionow.com` - -**需要操作:** -- [ ] **确认发信地址是否已验证** - - 访问:https://console.cloud.tencent.com/ses/address - - 检查 `newletter@vionow.com` 的状态 - - 如果状态为"未验证"或"验证失败": - -**验证步骤:** -1. 进入SES控制台 → "发信地址" -2. 点击"创建发信地址"或编辑现有地址 -3. 输入邮箱:`newletter@vionow.com` -4. 腾讯云会发送验证邮件到该邮箱 -5. 点击邮件中的验证链接完成验证 -6. 确认状态变为"已验证" - -**注意:** -- ⚠️ 只有验证通过的邮箱才能发送邮件 -- ⚠️ 开发模式(template-id=0)不需要验证也能测试,但不会实际发邮件 -- ⚠️ 生产模式必须有已验证的发信地址 - ---- - -### 3. 邮件模板配置 ✅ **已配置** - -**当前状态:** -- `template-id=154360` - 生产模式(已配置) - -**当前配置:** -- ✅ 模板ID已配置为 `154360` -- ✅ 系统将使用生产模式,实际发送邮件 - -**模板说明:** -- 模板ID: `154360` -- 模式: 生产模式(会实际发送邮件) -- 验证码变量: 模板中应包含 `{{code}}` 变量用于替换验证码 - ---- - -### 4. 生产环境配置 ⚠️ **缺失** - -**当前状态:** -`application-prod.properties` 中**没有腾讯云SES配置** - -**需要添加:** -- [ ] **在生产环境配置文件中添加SES配置** - -**操作步骤:** -在 `demo/src/main/resources/application-prod.properties` 中添加: - -```properties -# 腾讯云SES配置 (生产环境) -tencent.ses.secret-id=${TENCENT_SES_SECRET_ID} -tencent.ses.secret-key=${TENCENT_SES_SECRET_KEY} -tencent.ses.region=ap-beijing -tencent.ses.from-email=${TENCENT_SES_FROM_EMAIL} -tencent.ses.from-name=AIGC平台 -tencent.ses.template-id=${TENCENT_SES_TEMPLATE_ID} -``` - -**环境变量设置:** -```bash -export TENCENT_SES_SECRET_ID=你的SecretID -export TENCENT_SES_SECRET_KEY=你的SecretKey -export TENCENT_SES_FROM_EMAIL=newletter@vionow.com -export TENCENT_SES_TEMPLATE_ID=你的模板ID -``` - ---- - -### 5. SES服务开通和额度 ⚠️ **重要** - -**需要确认:** -- [ ] **SES服务是否已开通** - - 访问:https://console.cloud.tencent.com/ses - - 检查服务状态 - -- [ ] **是否有可用额度** - - 检查账户余额或免费额度 - - 确认是否有足够的邮件发送配额 - - 查看计费信息 - -**检查步骤:** -1. 登录腾讯云控制台 -2. 进入SES服务控制台 -3. 查看"概览"页面的配额和用量信息 -4. 确认是否有可用额度 - ---- - -### 6. 测试验证 ⚠️ **重要** - -**开发模式测试:** -- [ ] **启动服务并测试** - ```bash - cd demo - ./mvnw spring-boot:run - ``` - -- [ ] **测试发送验证码** - ```bash - curl -X POST http://localhost:8080/api/verification/email/send \ - -H "Content-Type: application/json" \ - -d '{"email":"test@example.com"}' - ``` - -- [ ] **检查邮箱** - - 应该收到实际邮件,包含6位数字验证码 - - 邮件来自:newletter@vionow.com - -- [ ] **测试登录** - - 访问登录页面 - - 输入邮箱和验证码 - - 验证登录功能 - -**生产模式测试(已完成配置):** -- [x] ✅ **Template-id已配置为154360** -- [ ] **重启服务**(如果服务正在运行) -- [ ] **发送测试邮件** -- [ ] **检查实际邮箱是否收到邮件** - ---- - -## 三、配置优先级 - -### 🔴 紧急(必须配置) -1. **发信地址验证** - 生产环境必须验证才能发送邮件 -2. **邮件模板创建** - 生产环境必须配置模板ID -3. **生产环境配置** - `application-prod.properties` 缺少SES配置 - -### 🟡 重要(建议配置) -4. **SES服务权限检查** - 确保账号有权限访问SES服务 -5. **SES服务开通和额度** - 确保有可用配额 -6. **测试验证** - 确保功能正常(会实际发送邮件) -7. **发信地址验证** - 确保 newletter@vionow.com 已验证 - ---- - -## 四、配置检查清单 - -### 开发环境配置状态 - -| 配置项 | 状态 | 说明 | -|--------|------|------| -| SecretID | ✅ 已配置 | 需确认有效性和权限 | -| SecretKey | ✅ 已配置 | 需确认有效性 | -| Region | ✅ 已配置 | ap-beijing | -| From-email | ✅ 已配置 | newletter@vionow.com(需确认已验证) | -| From-name | ✅ 已配置 | AIGC平台 | -| Template-id | ✅ 已配置 | 154360(生产模式) | - -### 生产环境配置状态 - -| 配置项 | 状态 | 说明 | -|--------|------|------| -| SecretID | ❌ 未配置 | 需要添加环境变量 | -| SecretKey | ❌ 未配置 | 需要添加环境变量 | -| Region | ❌ 未配置 | 需要添加配置 | -| From-email | ❌ 未配置 | 需要添加环境变量 | -| From-name | ❌ 未配置 | 需要添加配置 | -| Template-id | ❌ 未配置 | 需要创建模板并配置ID | - ---- - -## 五、快速检查命令 - -### 检查配置文件 -```bash -# Windows PowerShell -Test-Path demo/src/main/resources/application-dev.properties -Test-Path demo/src/main/resources/application-prod.properties - -# 检查SES配置项 -Select-String -Path "demo/src/main/resources/application-dev.properties" -Pattern "tencent.ses" -``` - -### 测试邮件发送功能 -```bash -# 开发模式测试(不会实际发送邮件) -curl -X POST http://localhost:8080/api/verification/email/send \ - -H "Content-Type: application/json" \ - -d '{"email":"test@example.com"}' - -# 检查日志中的验证码 -# 应该看到:开发模式:邮件验证码发送到: test@example.com, 验证码: XXXXXX -``` - -### 测试登录功能 -```bash -# 使用开发接口设置验证码(开发模式) -curl -X POST http://localhost:8080/api/verification/email/dev-set \ - -H "Content-Type: application/json" \ - -d '{"email":"test@example.com","code":"123456"}' - -# 测试登录 -curl -X POST http://localhost:8080/api/auth/login/email \ - -H "Content-Type: application/json" \ - -d '{"email":"test@example.com","code":"123456"}' -``` - ---- - -## 六、常见问题 - -### Q1: 当前配置为生产模式 -**A:** 当前模板ID已配置为154360(生产模式),系统会实际发送邮件。请确保: -- 发信地址 `newletter@vionow.com` 已验证 -- SES服务有可用额度 -- 模板ID 154360 在腾讯云SES控制台已审核通过 - -### Q2: 发送失败 - 认证错误 -``` -InvalidSecretId.InvalidSignature -``` -**解决:** -- 检查SecretID和SecretKey是否正确 -- 确认密钥是否有SES服务权限 -- 检查密钥是否过期 - -### Q3: 发送失败 - 发信地址未验证 -``` -InvalidParameter.EmailAddressNotVerified -``` -**解决:** -- 在SES控制台验证发信地址 -- 检查 `tencent.ses.from-email` 配置是否正确 -- 注意:开发模式(template-id=0)不需要验证也能测试 - -### Q4: 发送失败 - 模板不存在 -``` -ResourceNotFound.TemplateNotFound -``` -**解决:** -- 确认模板ID是否正确 -- 检查模板是否已审核通过 -- 确认模板区域与配置的region一致 - -### Q5: 当前已是生产模式 -**A:** 当前已配置为生产模式(template-id=154360),系统会实际发送邮件。如需切换回开发模式,将template-id设置为0即可。 - ---- - -## 七、下一步操作建议 - -### 当前配置(生产模式) -1. ✅ **模板ID已配置为154360**(生产模式) -2. ⚠️ **验证发信地址**(重要) - - 确保 `newletter@vionow.com` 在SES控制台已验证 - - 访问:https://console.cloud.tencent.com/ses/address - -3. ⚠️ **测试实际发送邮件** - - 重启服务(如果正在运行) - - 发送测试验证码 - - 检查邮箱是否收到邮件 - -4. ⚠️ **更新生产环境配置** - - 在 `application-prod.properties` 中已添加SES配置 - - 设置环境变量 `TENCENT_SES_TEMPLATE_ID=154360` - ---- - -## 八、相关文档链接 - -- **腾讯云SES控制台**: https://console.cloud.tencent.com/ses -- **发信地址管理**: https://console.cloud.tencent.com/ses/address -- **邮件模板管理**: https://console.cloud.tencent.com/ses/template -- **API密钥管理**: https://console.cloud.tencent.com/cam/capi -- **SES文档**: https://cloud.tencent.com/document/product/1288 -- **邮箱验证登录指南**: `EMAIL_VERIFICATION_LOGIN_GUIDE.md` -- **SES启动检查清单**: `TENCENT_SES_STARTUP_CHECKLIST.md` - ---- - -## 九、总结 - -### 当前状态 -- ✅ **开发环境配置已完成**,包括模板ID 154360 -- ✅ **生产模式已启用**(template-id=154360),会实际发送邮件 -- ⚠️ **需要确保发信地址已验证** - -### 最小启动要求 -1. ✅ SecretID和SecretKey(已配置) -2. ✅ From-email地址(已配置:newletter@vionow.com) -3. ✅ Template-id=154360(生产模式,已配置) - -### 生产环境要求 -1. ⚠️ 已验证的发信地址(newletter@vionow.com) -2. ✅ 已配置的邮件模板(ID: 154360) -3. ✅ 生产环境配置文件中的SES配置(已添加) -4. ⚠️ 有效的SecretID/SecretKey和SES服务权限(需确认) - -**当前状态:** 已配置为生产模式,会实际发送邮件。请确保: -- 发信地址 `newletter@vionow.com` 已验证 -- 模板ID 154360 已审核通过 -- SES服务有可用额度 - diff --git a/demo/EMAIL_LOGIN_TEST_CHECKLIST.md b/demo/EMAIL_LOGIN_TEST_CHECKLIST.md deleted file mode 100644 index 8fcf87e..0000000 --- a/demo/EMAIL_LOGIN_TEST_CHECKLIST.md +++ /dev/null @@ -1,378 +0,0 @@ -# 邮件登录模块测试检查清单 - -## 📋 测试前检查 - -### 1. 配置检查 ✅ - -**当前配置状态:** -- ✅ SecretID: `AKIDXw8HBtNfjdJm480xljV4QZUDi05wa0DE` -- ✅ SecretKey: `tZyHMDsKadS4ScZhhU3PYUErGUVIqBIB` -- ✅ Region: `ap-beijing` -- ✅ From-email: `newletter@vionow.com` -- ✅ Template-id: `154360`(生产模式) - -**需要确认:** -- [ ] **发信地址是否已验证** - - 访问:https://console.cloud.tencent.com/ses/address - - 检查 `newletter@vionow.com` 状态应为"已验证" - - ⚠️ **重要**:未验证的发信地址无法发送邮件 - -- [ ] **模板ID是否有效** - - 访问:https://console.cloud.tencent.com/ses/template - - 检查模板ID `154360` 是否已审核通过 - - 确认模板中包含 `{{code}}` 变量 - -- [ ] **SES服务是否有可用额度** - - 访问:https://console.cloud.tencent.com/ses - - 检查账户余额或免费额度 - ---- - -### 2. 服务检查 - -- [ ] **后端服务是否运行** - ```bash - # 检查服务是否在运行 - # 访问:http://localhost:8080 - ``` - -- [ ] **前端服务是否运行** - ```bash - # 检查前端是否在运行 - # 访问:http://localhost:5173 - ``` - -- [ ] **数据库是否正常** - - 确认数据库连接正常 - - 确认用户表等表结构存在 - ---- - -### 3. 测试邮箱准备 - -- [ ] **准备测试邮箱地址** - - 使用真实的邮箱地址(可以正常接收邮件) - - 建议使用常用邮箱:Gmail、QQ邮箱、163邮箱等 - - 确保可以访问邮箱查看验证码 - ---- - -## 🚀 测试步骤 - -### 步骤1:访问登录页面 - -1. 打开浏览器访问:`http://localhost:5173/login` - - 或访问部署的前端地址 - -2. 确认页面显示: - - ✅ 邮箱输入框 - - ✅ 验证码输入框 - - ✅ "获取验证码"按钮 - - ✅ "登录/注册"按钮 - ---- - -### 步骤2:发送验证码 - -1. **输入邮箱地址** - - 输入一个有效的邮箱地址(例如:`test@example.com`) - -2. **点击"获取验证码"按钮** - - 观察按钮是否进入60秒倒计时状态 - - 观察是否有成功提示 - -3. **检查结果:** - - ✅ **成功**:显示"验证码已发送到您的邮箱" - - ❌ **失败**:检查错误信息 - -4. **查看日志(如有错误)** - ```bash - # 查看后端日志,查找错误信息 - # 可能的问题: - # - 发信地址未验证 - # - 模板ID无效 - # - 权限不足 - # - 额度不足 - ``` - ---- - -### 步骤3:接收验证码 - -**当前配置为生产模式(template-id=154360),会实际发送邮件。** - -1. **检查邮箱收件箱** - - 邮件来自:`newletter@vionow.com` - - 邮件主题:根据模板配置 - - 邮件内容:包含6位数字验证码 - -2. **如果未收到邮件:** - - 检查垃圾邮件文件夹 - - 等待1-2分钟(邮件发送可能有延迟) - - 检查邮箱是否正确输入 - - 查看后端日志是否有错误 - ---- - -### 步骤4:输入验证码并登录 - -1. **输入验证码** - - 输入邮箱中收到的6位数字验证码 - -2. **点击"登录/注册"按钮** - -3. **检查结果:** - - ✅ **成功**: - - 跳转到主页或个人中心 - - 显示登录成功提示 - - 浏览器控制台中保存了token - - ❌ **失败**:检查错误信息 - - 验证码错误 - - 验证码过期(5分钟) - - 其他错误 - ---- - -### 步骤5:验证登录状态 - -1. **检查Token是否保存** - - 打开浏览器开发者工具 - - 查看 `sessionStorage` 或 `localStorage` - - 确认 `token` 和 `user` 信息已保存 - -2. **检查用户信息** - - 查看个人中心或用户信息页面 - - 确认邮箱等信息正确显示 - -3. **测试自动注册功能** - - 使用一个新的邮箱地址测试 - - 系统应自动创建新用户并登录 - ---- - -## 🔍 常见问题排查 - -### 问题1:点击获取验证码后没有反应 - -**可能原因:** -- 前端服务未启动 -- 后端服务未启动 -- 网络连接问题 - -**解决方法:** -1. 检查前端控制台错误信息 -2. 检查后端服务是否运行 -3. 检查API接口地址是否正确 - ---- - -### 问题2:显示"发送失败"或错误信息 - -**可能原因:** -- 发信地址未验证 -- 模板ID无效或未审核 -- SecretID/SecretKey权限不足 -- SES服务额度不足 - -**解决方法:** -1. 检查SES控制台发信地址状态 -2. 检查模板ID是否正确且已审核 -3. 检查API密钥权限 -4. 检查SES服务额度 - -**查看后端日志:** -```bash -# 查看详细的错误信息 -# 常见错误: -# - InvalidParameter.EmailAddressNotVerified(发信地址未验证) -# - ResourceNotFound.TemplateNotFound(模板不存在) -# - InvalidSecretId.InvalidSignature(密钥错误) -``` - ---- - -### 问题3:收不到邮件 - -**可能原因:** -- 邮箱地址输入错误 -- 邮件被垃圾邮件过滤器拦截 -- 邮件发送延迟 -- 发信地址未验证(生产模式) - -**解决方法:** -1. 检查邮箱地址是否正确 -2. 检查垃圾邮件文件夹 -3. 等待1-2分钟 -4. 确认发信地址已验证 -5. 查看后端日志确认是否发送成功 - ---- - -### 问题4:验证码验证失败 - -**可能原因:** -- 验证码输入错误 -- 验证码已过期(5分钟) -- 验证码已被使用 -- 邮箱地址不匹配 - -**解决方法:** -1. 确认验证码输入正确(6位数字) -2. 确认在5分钟内使用 -3. 重新获取验证码 -4. 确认邮箱地址与获取验证码时一致 - ---- - -## 🧪 测试用例 - -### 测试用例1:正常登录流程 - -**步骤:** -1. 输入邮箱:`test@example.com` -2. 点击"获取验证码" -3. 等待邮件到达(生产模式) -4. 输入验证码 -5. 点击"登录/注册" - -**预期结果:** -- ✅ 验证码发送成功 -- ✅ 收到邮件 -- ✅ 登录成功 -- ✅ 跳转到主页 - ---- - -### 测试用例2:自动注册新用户 - -**步骤:** -1. 输入一个从未使用过的邮箱:`newuser@example.com` -2. 点击"获取验证码" -3. 收到验证码后输入 -4. 点击"登录/注册" - -**预期结果:** -- ✅ 系统自动创建新用户 -- ✅ 自动登录 -- ✅ 用户信息正确保存 - ---- - -### 测试用例3:验证码过期测试 - -**步骤:** -1. 获取验证码 -2. 等待超过5分钟 -3. 输入验证码尝试登录 - -**预期结果:** -- ❌ 提示验证码已过期 -- ✅ 需要重新获取验证码 - ---- - -### 测试用例4:发送频率限制 - -**步骤:** -1. 点击"获取验证码" -2. 在60秒内再次点击"获取验证码" - -**预期结果:** -- ✅ 按钮处于倒计时状态,无法点击 -- ✅ 或提示"发送过于频繁" - ---- - -### 测试用例5:邮箱格式验证 - -**步骤:** -1. 输入无效邮箱:`invalid-email` -2. 点击"获取验证码" - -**预期结果:** -- ❌ 提示"请输入正确的邮箱地址" - ---- - -## ✅ 测试完成检查清单 - -完成测试后,确认以下功能正常: - -- [ ] ✅ 可以发送验证码 -- [ ] ✅ 可以收到邮件(生产模式) -- [ ] ✅ 可以输入验证码登录 -- [ ] ✅ 新用户可以自动注册 -- [ ] ✅ Token正确保存 -- [ ] ✅ 用户信息正确显示 -- [ ] ✅ 验证码过期机制正常 -- [ ] ✅ 发送频率限制正常 -- [ ] ✅ 邮箱格式验证正常 - ---- - -## 📝 测试记录模板 - -``` -测试时间:____年__月__日 __:__ -测试环境:开发/生产 -发信地址状态:已验证/未验证 -模板ID状态:已审核/未审核 - -测试邮箱:_______________ -测试结果: -[ ] 发送验证码成功 -[ ] 收到邮件 -[ ] 登录成功 -[ ] 自动注册成功 - -遇到的问题: -_________________________________ - -解决方案: -_________________________________ -``` - ---- - -## 🚨 重要提醒 - -### 生产模式注意事项 - -**当前配置为生产模式(template-id=154360),会实际发送邮件。** - -⚠️ **必须确保:** -1. 发信地址 `newletter@vionow.com` 已验证 -2. 模板ID `154360` 已审核通过 -3. SES服务有可用额度 -4. API密钥有SES服务权限 - -### 如果发信地址未验证 - -**临时解决方案(仅用于测试):** -可以将 `template-id` 临时改为 `0`,进入开发模式: -```properties -tencent.ses.template-id=0 -``` -开发模式下不会实际发送邮件,验证码会在日志中显示。 - ---- - -## 🔗 相关资源 - -- **腾讯云SES控制台**: https://console.cloud.tencent.com/ses -- **发信地址管理**: https://console.cloud.tencent.com/ses/address -- **邮件模板管理**: https://console.cloud.tencent.com/ses/template -- **邮箱验证登录指南**: `EMAIL_VERIFICATION_LOGIN_GUIDE.md` -- **邮件登录配置清单**: `EMAIL_LOGIN_CONFIGURATION_CHECKLIST.md` - ---- - -## ✅ 测试准备完成 - -**配置状态:** -- ✅ 所有必需配置已设置 -- ⚠️ 需要确认发信地址已验证 -- ⚠️ 需要确认模板ID已审核 - -**可以开始测试!** - diff --git a/demo/EMAIL_SEND_TROUBLESHOOTING.md b/demo/EMAIL_SEND_TROUBLESHOOTING.md deleted file mode 100644 index 4db74b9..0000000 --- a/demo/EMAIL_SEND_TROUBLESHOOTING.md +++ /dev/null @@ -1,206 +0,0 @@ -# 邮件发送问题诊断指南 - -## 🔍 问题分析 - -根据你提供的日志,发现了以下情况: - -### 日志分析 - -**你的日志显示:** -``` -INFO ... VerificationCodeService : 邮件验证码发送成功,邮箱: 984523799@qq.com -``` - -**但是缺少以下关键日志:** -- ❌ 没有看到 "当前邮件模板ID配置: xxx" -- ❌ 没有看到 "未配置邮件模板ID,使用开发模式"(开发模式警告) -- ❌ 没有看到 "使用生产模式发送邮件"(生产模式日志) -- ❌ 没有看到 "开始发送邮件,收件人: ..."(TencentSesMailService日志) - -### 可能的原因 - -1. **配置值未正确读取** - - `template-id=154360` 可能没有被正确读取 - - 默认值 `0` 被使用,进入了开发模式 - - 但开发模式的警告日志也没有出现 - -2. **服务使用旧版本代码** - - 可能运行的jar包是旧版本 - - 需要重新编译并启动 - ---- - -## 🛠️ 诊断步骤 - -### 步骤1:检查配置是否正确读取 - -我已经更新了代码,添加了更详细的日志。请: - -1. **重新编译项目** - ```bash - cd demo - mvn clean package - ``` - -2. **重新启动服务** - ```bash - java -jar target/demo-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev - ``` - -3. **再次测试发送验证码** - -4. **查看新的日志输出**,应该能看到: - ``` - INFO ... VerificationCodeService : 当前邮件模板ID配置: 154360 - INFO ... VerificationCodeService : 使用生产模式发送邮件,收件人: xxx@qq.com, 模板ID: 154360 - INFO ... TencentSesMailService : 开始发送邮件,收件人: xxx@qq.com, 主题: 验证码, 模板ID: 154360 - ``` - -### 步骤2:检查配置文件 - -确认 `application-dev.properties` 中的配置: - -```properties -tencent.ses.template-id=154360 -``` - -**注意:** -- 确保没有空格 -- 确保值是正确的数字 -- 确保配置文件被正确加载(使用 `--spring.profiles.active=dev`) - -### 步骤3:检查日志输出 - -**如果看到:** -``` -INFO 当前邮件模板ID配置: 0 -WARN 未配置邮件模板ID,使用开发模式 -``` - -**说明:** 配置值没有正确读取,使用的是默认值0。 - -**解决方案:** -1. 检查配置文件路径 -2. 确认使用的是dev配置:`--spring.profiles.active=dev` -3. 检查配置文件名是否正确 - -**如果看到:** -``` -INFO 当前邮件模板ID配置: 154360 -INFO 使用生产模式发送邮件,收件人: xxx@qq.com, 模板ID: 154360 -INFO 开始发送邮件,收件人: xxx@qq.com, 主题: 验证码, 模板ID: 154360 -ERROR 邮件验证码发送失败,邮箱: xxx@qq.com -``` - -**说明:** 配置正确,但邮件发送失败。 - -**常见错误:** - -1. **发信地址未验证** - ``` - InvalidParameter.EmailAddressNotVerified - ``` - **解决:** 在腾讯云SES控制台验证 `newletter@vionow.com` - -2. **模板ID不存在或未审核** - ``` - ResourceNotFound.TemplateNotFound - ``` - **解决:** 确认模板ID 154360 已审核通过 - -3. **权限不足** - ``` - InvalidSecretId.InvalidSignature - ``` - **解决:** 检查SecretID/SecretKey是否正确,是否有SES服务权限 - -4. **额度不足** - ``` - 余额不足 - ``` - **解决:** 充值或检查免费额度 - ---- - -## 🚀 快速测试方案 - -### 方案1:临时使用开发模式测试 - -如果发信地址未验证或需要快速测试登录功能,可以临时切换到开发模式: - -1. **修改配置文件** - ```properties - tencent.ses.template-id=0 - ``` - -2. **重新编译并启动** - ```bash - mvn clean package - java -jar target/demo-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev - ``` - -3. **测试发送验证码** - - 会看到日志:`开发模式:邮件验证码发送到: xxx@qq.com, 验证码: 123456` - - 从日志中获取验证码用于登录测试 - -### 方案2:检查SES配置状态 - -1. **访问SES控制台** - - 发信地址管理:https://console.cloud.tencent.com/ses/address - - 邮件模板管理:https://console.cloud.tencent.com/ses/template - -2. **确认以下状态:** - - [ ] `newletter@vionow.com` 状态为"已验证" - - [ ] 模板ID `154360` 状态为"已审核" - - [ ] SES服务有可用额度 - ---- - -## 📝 诊断检查清单 - -请按照以下顺序检查: - -- [ ] **1. 配置检查** - - 配置文件 `application-dev.properties` 中存在 `tencent.ses.template-id=154360` - - 没有多余空格或特殊字符 - -- [ ] **2. 编译检查** - - 执行了 `mvn clean package` - - 编译成功,没有错误 - -- [ ] **3. 启动检查** - - 使用 `--spring.profiles.active=dev` 启动 - - 启动日志中没有配置相关的错误 - -- [ ] **4. 日志检查** - - 重新启动后,测试发送验证码 - - 查看日志中是否有新的详细信息 - -- [ ] **5. SES配置检查** - - 发信地址已验证 - - 模板ID已审核 - - 有可用额度 - ---- - -## 🔧 下一步操作 - -1. **立即执行:** - ```bash - cd demo - mvn clean package - java -jar target/demo-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev - ``` - -2. **再次测试发送验证码** - -3. **查看新的日志输出**,告诉我你看到了什么日志信息 - -4. **根据新的日志信息,我可以进一步帮你诊断问题** - ---- - -## ⚠️ 重要提示 - -**当前代码已更新,添加了更详细的日志输出。请重新编译并启动服务,然后再次测试。新的日志会帮助我们准确定位问题。** - diff --git a/demo/EMAIL_VERIFICATION_LOGIN_GUIDE.md b/demo/EMAIL_VERIFICATION_LOGIN_GUIDE.md deleted file mode 100644 index 0f9c660..0000000 --- a/demo/EMAIL_VERIFICATION_LOGIN_GUIDE.md +++ /dev/null @@ -1,283 +0,0 @@ -# 邮箱验证码登录系统说明 - -## 📋 系统说明 - -系统**已完全禁用用户名密码登录**,现在**仅支持邮箱验证码登录**。 - -## 🔐 登录流程 - -### 1. 用户登录流程 - -``` -输入邮箱 → 点击"获取验证码" → 接收邮件验证码 → 输入验证码 → 点击"登录/注册" → 进入系统 -``` - -### 2. 详细步骤 - -1. **输入邮箱地址** - - 用户在登录页面输入邮箱地址 - - 系统会验证邮箱格式 - -2. **获取验证码** - - 点击"获取验证码"按钮 - - 系统调用腾讯云SES发送验证码邮件 - - 按钮进入60秒倒计时状态(防重复发送) - -3. **接收验证码** - - 用户查收邮箱中的验证码 - - 验证码为6位数字 - - 验证码有效期:5分钟 - -4. **输入验证码** - - 用户输入收到的6位数字验证码 - - 系统会验证验证码格式 - -5. **完成登录** - - 点击"登录/注册"按钮 - - 系统验证验证码是否正确 - - 验证通过后: - - 如果用户存在:直接登录 - - 如果用户不存在:自动注册新用户并登录 - - 登录成功后生成JWT Token - - 跳转到个人主页 - -## ✅ 已实现的功能 - -### 后端功能 -✅ **邮箱验证码登录接口** - `/api/auth/login/email` -- 验证邮箱验证码 -- 自动注册新用户(如不存在) -- 生成JWT Token -- 返回用户信息 - -✅ **用户名密码登录已禁用** - `/api/auth/login` -- 返回提示信息:"系统已禁用用户名密码登录,请使用邮箱验证码登录" - -✅ **验证码服务** -- 发送验证码邮件:`/api/verification/email/send` -- 验证验证码:`/api/verification/email/verify` -- 开发模式支持:`/api/verification/email/dev-set` - -### 前端功能 -✅ **登录页面** -- 邮箱输入框 -- 验证码输入框 -- 获取验证码按钮(带倒计时) -- 登录/注册按钮 -- 表单验证 -- 错误提示 - -✅ **登录流程** -- 发送验证码请求 -- 验证码格式验证(6位数字) -- 调用邮箱验证码登录API -- Token存储 -- 自动跳转 - -## 📝 API接口说明 - -### 1. 发送验证码 -``` -POST /api/verification/email/send -Content-Type: application/json - -{ - "email": "user@example.com" -} -``` - -**响应**: -```json -{ - "success": true, - "message": "验证码发送成功" -} -``` - -### 2. 邮箱验证码登录 -``` -POST /api/auth/login/email -Content-Type: application/json - -{ - "email": "user@example.com", - "code": "123456" -} -``` - -**响应**: -```json -{ - "success": true, - "message": "登录成功", - "data": { - "user": { - "id": 1, - "username": "user", - "email": "user@example.com", - ... - }, - "token": "eyJhbGciOiJIUzI1NiIs..." - } -} -``` - -## 🔒 安全特性 - -### 1. 验证码安全 -- ✅ 验证码有效期:5分钟 -- ✅ 验证码长度:6位数字 -- ✅ 发送频率限制:60秒内只能发送一次 -- ✅ 验证后自动删除,防止重复使用 - -### 2. 登录安全 -- ✅ 必须验证验证码才能登录 -- ✅ 用户名密码登录已完全禁用 -- ✅ 使用JWT Token进行身份认证 -- ✅ 自动注册用户时设置默认权限(ROLE_USER) - -## 🎯 用户体验 - -### 优点 -- ✅ 无需记忆密码 -- ✅ 登录流程简单 -- ✅ 自动注册新用户 -- ✅ 安全可靠 - -### 注意事项 -- ⚠️ 需要邮箱能够正常接收邮件 -- ⚠️ 验证码有时效性(5分钟) -- ⚠️ 发送验证码有频率限制(60秒) - -## 🛠️ 开发模式 - -### 开发环境配置 -当 `tencent.ses.template-id=0` 时,系统进入开发模式: - -- ✅ 不会实际发送邮件 -- ✅ 验证码显示在日志中 -- ✅ 可以使用开发接口手动设置验证码 - -### 开发模式测试 -```bash -# 1. 发送验证码(开发模式) -POST /api/verification/email/send -{ - "email": "test@example.com" -} -# 查看日志获取验证码 - -# 2. 或者直接设置验证码 -POST /api/verification/email/dev-set -{ - "email": "test@example.com", - "code": "123456" -} - -# 3. 使用设置的验证码登录 -POST /api/auth/login/email -{ - "email": "test@example.com", - "code": "123456" -} -``` - -## 📊 登录流程对比 - -### 旧流程(已禁用) -``` -输入用户名 → 输入密码 → 点击登录 → 进入系统 -``` - -### 新流程(当前) -``` -输入邮箱 → 获取验证码 → 接收邮件 → 输入验证码 → 登录/注册 → 进入系统 -``` - -## ⚙️ 配置要求 - -### 必需配置 -```properties -# 腾讯云SES配置 -tencent.ses.secret-id=你的SecretID -tencent.ses.secret-key=你的SecretKey -tencent.ses.from-email=已验证的发信地址 -tencent.ses.template-id=0 # 0=开发模式,实际ID=生产模式 -``` - -## 🚀 使用示例 - -### 前端调用示例 - -```javascript -// 1. 发送验证码 -const response = await fetch('/api/verification/email/send', { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ email: 'user@example.com' }) -}) - -// 2. 登录(使用收到的验证码) -const loginResponse = await fetch('/api/auth/login/email', { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ - email: 'user@example.com', - code: '123456' // 从邮箱获取的验证码 - }) -}) - -const result = await loginResponse.json() -if (result.success) { - // 保存token和用户信息 - sessionStorage.setItem('token', result.data.token) - sessionStorage.setItem('user', JSON.stringify(result.data.user)) - // 跳转到主页 -} -``` - -## ⚠️ 重要说明 - -1. **用户名密码登录已完全禁用** - - 即使调用 `/api/auth/login`,也会返回错误提示 - - 所有登录必须通过邮箱验证码方式 - -2. **自动注册** - - 如果邮箱对应的用户不存在,系统会自动创建新用户 - - 用户名自动从邮箱生成(邮箱@前面的部分) - - 默认角色:ROLE_USER(普通用户) - - 默认积分:50 - -3. **验证码管理** - - 验证码存储在内存中(重启服务会清除) - - 验证成功后自动删除 - - 过期后自动清除 - -## 🔄 后续优化建议 - -如需进一步提升,可以考虑: -- 将验证码存储到Redis(支持分布式) -- 添加图形验证码防止机器人 -- 支持手机号验证码登录 -- 添加登录日志记录 - -## ✅ 总结 - -系统现在**完全使用邮箱验证码登录**,用户名密码登录已禁用。用户只需: -1. 输入邮箱 -2. 获取验证码 -3. 输入验证码 -4. 完成登录/注册 - -安全和用户体验都得到了提升! - - - - - - - - - - - diff --git a/demo/FIFTH_ROUND_ULTIMATE_CHECK.md b/demo/FIFTH_ROUND_ULTIMATE_CHECK.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/FIFTH_ROUND_ULTIMATE_CHECK.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/FINAL_CODE_CHECK_REPORT.md b/demo/FINAL_CODE_CHECK_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/FINAL_CODE_CHECK_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/FINAL_CODE_LOGIC_AUDIT_REPORT.md b/demo/FINAL_CODE_LOGIC_AUDIT_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/FINAL_CODE_LOGIC_AUDIT_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/FINAL_CODE_LOGIC_FIXES_SUMMARY.md b/demo/FINAL_CODE_LOGIC_FIXES_SUMMARY.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/FINAL_CODE_LOGIC_FIXES_SUMMARY.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/FINAL_LOGIC_ERROR_FIXES.md b/demo/FINAL_LOGIC_ERROR_FIXES.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/FINAL_LOGIC_ERROR_FIXES.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/FINAL_NGINX_NGROK_SETUP.md b/demo/FINAL_NGINX_NGROK_SETUP.md deleted file mode 100644 index 32cfb7d..0000000 --- a/demo/FINAL_NGINX_NGROK_SETUP.md +++ /dev/null @@ -1,238 +0,0 @@ -# 🎯 Nginx + Ngrok 内网穿透最终配置 - -## ✅ 配置完成状态 - -所有配置已完成并验证通过,可以直接使用! - ---- - -## 📋 当前配置 - -### Ngrok 穿透信息 -- **穿透地址**: `https://curtly-aphorismatic-ginger.ngrok-free.dev` -- **穿透端口**: `80` (Nginx) -- **协议**: HTTPS(由 Ngrok 自动提供) - -### 架构流程 -``` -外部用户 - ↓ -https://curtly-aphorismatic-ginger.ngrok-free.dev (Ngrok HTTPS) - ↓ -localhost:80 (Nginx - 唯一需要穿透的端口) - ├─ GET / → 前端静态文件 - ├─ GET /api/* → proxy_pass → backend:8080 (内部 Docker 网络) - └─ GET /health → Nginx 健康检查 -``` - ---- - -## ✅ 已完成的配置更新 - -### 1. Nginx 配置 ✅ -**文件**: `nginx/nginx.conf` -- ✅ 添加 `server_name` 支持 ngrok 域名 -- ✅ API 代理配置:`/api/` → `backend:8080` -- ✅ CORS 配置优化,支持动态来源 -- ✅ 前端静态文件服务 - -### 2. 前端 API 自动适配 ✅ -**文件**: -- `frontend/src/utils/apiHelper.js` - 统一的 API 工具函数 -- `frontend/src/api/request.js` - 使用工具函数 -- `frontend/src/api/cleanup.js` - 使用工具函数 -- `frontend/src/views/Login.vue` - 使用工具函数 - -**功能**: -- ✅ 自动检测当前访问域名 -- ✅ 通过 ngrok 访问:使用相对路径 `/api`(自动适配) -- ✅ 本地开发:使用 `http://localhost:8080/api` - -### 3. 支付宝回调配置 ✅ -**文件**: `src/main/resources/application-dev.properties` -- ✅ `alipay.notify-url`: `https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/notify` -- ✅ `alipay.return-url`: `https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/return` - -### 4. 后端 CORS 配置 ✅ -**文件**: `src/main/java/com/example/demo/config/SecurityConfig.java` -- ✅ 支持 `*.ngrok-free.app` 域名模式 -- ✅ 支持所有 ngrok 子域名 - -### 5. Docker Compose 配置 ✅ -**文件**: `docker-compose.yml` -- ✅ 服务编排:MySQL、Backend、Nginx -- ✅ 网络配置:`app-network` -- ✅ 端口映射:仅 Nginx 暴露 80 端口(后端和 MySQL 不对外暴露) - ---- - -## 🚀 部署步骤 - -### 步骤 1: 构建前端 - -```bash -cd frontend -npm install -npm run build -cd .. -``` - -**重要**: 确保 `frontend/dist` 目录存在。 - -### 步骤 2: 启动 Docker 服务 - -```bash -# 启动所有服务 -docker-compose up -d --build - -# 查看服务状态 -docker-compose ps - -# 查看日志 -docker-compose logs -f -``` - -### 步骤 3: 启动 Ngrok(穿透 80 端口) - -```bash -# 重要:必须穿透 80 端口(Nginx),不是 8080(后端) -ngrok http 80 -``` - -**输出示例**: -``` -Forwarding https://curtly-aphorismatic-ginger.ngrok-free.dev -> http://localhost:80 -``` - -### 步骤 4: 访问应用 - -在浏览器中打开: -- 🌐 **前端**: `https://curtly-aphorismatic-ginger.ngrok-free.dev` -- 🔗 **API**: `https://curtly-aphorismatic-ginger.ngrok-free.dev/api` -- 🏥 **健康检查**: `https://curtly-aphorismatic-ginger.ngrok-free.dev/health` - ---- - -## 🧪 验证测试 - -### 1. 测试前端访问 -```bash -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/ -``` - -### 2. 测试 API 代理 -```bash -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/api/health -``` - -### 3. 测试健康检查 -```bash -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/health -``` - -### 4. 测试登录 API -```bash -curl -X POST https://curtly-aphorismatic-ginger.ngrok-free.dev/api/verification/email/send \ - -H "Content-Type: application/json" \ - -d '{"email":"test@example.com"}' -``` - ---- - -## 📊 配置清单 - -| 配置项 | 文件位置 | 状态 | 说明 | -|--------|----------|------|------| -| Nginx server_name | `nginx/nginx.conf` | ✅ | 已添加 ngrok 域名 | -| Nginx 端口 | `docker-compose.yml` | ✅ | 80 端口(唯一对外暴露) | -| 前端 API 基础路径 | `frontend/src/api/request.js` | ✅ | 自动适配域名 | -| API 工具函数 | `frontend/src/utils/apiHelper.js` | ✅ | 统一处理 API URL | -| 支付宝通知地址 | `application-dev.properties` | ✅ | 已配置 ngrok URL | -| 支付宝返回地址 | `application-dev.properties` | ✅ | 已配置 ngrok URL | -| 后端 CORS | `SecurityConfig.java` | ✅ | 支持 ngrok 域名模式 | -| Docker 网络 | `docker-compose.yml` | ✅ | app-network bridge | - ---- - -## ⚠️ 重要提醒 - -### 1. 端口穿透 -- ✅ **只穿透 80 端口**(Nginx) -- ❌ **不要穿透 8080 端口**(后端,通过 Nginx 内部访问) -- ❌ **不要穿透 3306 端口**(MySQL,仅在 Docker 网络内访问) - -### 2. Ngrok 地址变化 -如果 ngrok 地址变化,需要更新: -1. `nginx/nginx.conf` - `server_name` 行 -2. `application-dev.properties` - `alipay.notify-url` 和 `alipay.return-url` - -### 3. 前端构建 -每次修改前端代码后,需要重新构建: -```bash -cd frontend -npm run build -cd .. -``` - -### 4. Nginx 配置重载 -修改 Nginx 配置后: -```bash -# 测试配置 -docker exec demo-nginx nginx -t - -# 重载配置(不中断服务) -docker exec demo-nginx nginx -s reload -``` - ---- - -## 🔧 故障排查 - -### 502 Bad Gateway -```bash -# 检查后端服务 -docker-compose logs backend -docker-compose restart backend -``` - -### 404 Not Found -```bash -# 检查前端构建产物 -ls frontend/dist - -# 检查 Nginx 配置 -docker exec demo-nginx nginx -t -``` - -### CORS 错误 -- 检查后端 CORS 配置是否包含 ngrok 域名 -- 检查 Nginx CORS 头设置 -- 确认请求使用正确的域名 - ---- - -## 📚 相关文档 - -- [Nginx 反向代理配置指南](./NGINX_REVERSE_PROXY_GUIDE.md) -- [Ngrok 内网穿透配置](./NGINX_INTRANET_TUNNEL.md) -- [Ngrok 部署指南](./NGROK_DEPLOYMENT_GUIDE.md) -- [配置验证报告](./CONFIG_VALIDATION_REPORT.md) - ---- - -## ✅ 最终状态 - -**所有配置已完成并验证通过!** - -可以开始部署: -1. ✅ 构建前端 -2. ✅ 启动 Docker 服务 -3. ✅ 启动 Ngrok(穿透 80 端口) -4. ✅ 访问应用 - ---- - -**配置完成时间**: 2025-11-03 -**Ngrok 地址**: `https://curtly-aphorismatic-ginger.ngrok-free.dev` -**穿透端口**: `80` (Nginx) - diff --git a/demo/FOURTH_ROUND_FINAL_CHECK.md b/demo/FOURTH_ROUND_FINAL_CHECK.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/FOURTH_ROUND_FINAL_CHECK.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/FRP_QUICK_START.md b/demo/FRP_QUICK_START.md deleted file mode 100644 index 60def89..0000000 --- a/demo/FRP_QUICK_START.md +++ /dev/null @@ -1,89 +0,0 @@ -# FRP 快速开始指南 - -## 最简单的配置方法(使用 OpenFrp) - -### 1. 注册并创建隧道 - -1. 访问:https://www.openfrp.net/ -2. 注册账号并登录 -3. 点击"创建隧道" -4. 配置: - - 节点:选择国内节点 - - 类型:HTTP - - 本地端口:8080 - - 域名:使用系统分配的或自定义 -5. 创建成功后,记录: - - 访问地址(如:`https://xxx.openfrp.net`) - - 服务器地址 - - Token - -### 2. 下载 FRP 客户端 - -1. 访问:https://github.com/fatedier/frp/releases -2. 下载最新版本的 Windows 版本(如:`frp_0.52.3_windows_amd64.zip`) -3. 解压到 `demo` 目录 - -### 3. 配置 FRP 客户端 - -1. 在 `demo` 目录下创建 `frpc.ini` 文件 -2. 复制 `frpc.ini.example` 的内容 -3. 修改配置: - ```ini - [common] - server_addr = 从OpenFrp控制台获取 - server_port = 7000 - token = 从OpenFrp控制台获取 - - [payment] - type = http - local_ip = 127.0.0.1 - local_port = 8080 - custom_domains = 你的域名.openfrp.net - ``` - -### 4. 启动 FRP - -双击运行 `start-frpc.bat`,或手动运行: - -```powershell -cd demo -.\frpc.exe -c frpc.ini -``` - -### 5. 更新配置文件 - -更新以下文件中的回调URL: - -**`demo/src/main/resources/application-dev.properties`:** -```properties -alipay.notify-url=https://你的域名.openfrp.net/api/payments/alipay/notify -alipay.return-url=https://你的域名.openfrp.net/api/payments/alipay/return -``` - -**`demo/src/main/resources/payment.properties`:** -```properties -alipay.domain=https://你的域名.openfrp.net -alipay.notify-url=https://你的域名.openfrp.net/api/payments/alipay/notify -alipay.return-url=https://你的域名.openfrp.net/api/payments/alipay/return -``` - -### 6. 重启服务器 - -重启 Spring Boot 应用,新的回调地址就会生效。 - -### 7. 测试 - -1. 访问 `https://你的域名.openfrp.net` - 应该能看到应用 -2. 测试回调接口: - ```powershell - Invoke-WebRequest -Uri "https://你的域名.openfrp.net/api/payments/alipay/notify" -Method HEAD - ``` - 应该返回 200,而不是 302 - -## 注意事项 - -- FRP 客户端需要一直运行,关闭后内网穿透会断开 -- 免费服务可能有流量限制,建议用于开发测试 -- 生产环境建议使用固定域名和服务器 - - diff --git a/demo/GIT_UPLOAD_GUIDE.md b/demo/GIT_UPLOAD_GUIDE.md deleted file mode 100644 index 1e697ee..0000000 --- a/demo/GIT_UPLOAD_GUIDE.md +++ /dev/null @@ -1,210 +0,0 @@ -# 📤 Git 上传到云端指南 - -## 一、准备工作 - -### 1.1 检查敏感信息 - -已更新 `.gitignore` 文件,以下文件不会被提交: -- `application-dev.properties` - 开发环境配置(包含数据库密码、API密钥等) -- `application-prod.properties` - 生产环境配置 -- `.env` - 环境变量文件 -- `uploads/` - 上传文件目录 -- `temp/` - 临时文件目录 -- `logs/` - 日志文件 -- `target/` - 构建产物 -- `frontend/node_modules/` - 前端依赖 - -### 1.2 创建配置文件模板 - -如果需要保留配置结构,可以创建模板文件: -- `application-dev.properties.example` -- `application-prod.properties.example` -- `.env.example` - ---- - -## 二、上传步骤 - -### 2.1 添加所有更改 - -```bash -# 进入项目目录 -cd C:\Users\UI\Desktop\AIGC\demo - -# 添加所有更改的文件 -git add . - -# 或者只添加特定文件 -git add src/ -git add frontend/ -git add pom.xml -git add .gitignore -git add DEPLOYMENT_CHECKLIST.md -git add QUICK_DEPLOY.md -git add CONFIGURATION_GUIDE.md -``` - -### 2.2 提交更改 - -```bash -# 提交更改 -git commit -m "feat: 优化系统配置,支持50人并发 - -- 调整数据库连接池配置(30个连接) -- 调整Tomcat线程池配置(150个线程) -- 调整异步任务执行器配置(5核心线程,20最大线程) -- 调整任务队列消费者线程数(5个线程) -- 添加无界阻塞队列支持 -- 实现分镜视频保存功能 -- 统一管理页面导航栏和右上角样式 -- 添加日活用户统计功能 -- 添加部署文档和快速部署指南" -``` - -### 2.3 推送到远程仓库 - -```bash -# 推送到远程仓库 -git push origin main - -# 或者如果主分支是 master -git push origin master - -# 如果是第一次推送,需要设置上游分支 -git push -u origin main -``` - ---- - -## 三、常见问题 - -### 3.1 如果远程仓库已有新提交 - -```bash -# 先拉取远程更改 -git pull origin main - -# 如果有冲突,解决冲突后 -git add . -git commit -m "解决合并冲突" -git push origin main -``` - -### 3.2 如果文件太大无法推送 - -```bash -# 检查大文件 -git ls-files | xargs du -h | sort -rh | head -20 - -# 如果确实需要大文件,考虑使用 Git LFS -git lfs install -git lfs track "*.jar" -git lfs track "*.zip" -``` - -### 3.3 如果推送被拒绝 - -```bash -# 强制推送(谨慎使用) -git push -f origin main - -# 或者先拉取再推送 -git pull --rebase origin main -git push origin main -``` - ---- - -## 四、验证上传 - -### 4.1 检查远程仓库 - -访问远程仓库地址,确认文件已上传: -- `ssh://git@49.234.3.145:222/blandarebiter/AIGC.git` - -### 4.2 克隆验证 - -```bash -# 在另一个目录克隆仓库验证 -cd /tmp -git clone ssh://git@49.234.3.145:222/blandarebiter/AIGC.git test-clone -cd test-clone -ls -la -``` - ---- - -## 五、后续维护 - -### 5.1 定期提交 - -```bash -# 每天工作结束后提交 -git add . -git commit -m "更新: 描述本次更改" -git push origin main -``` - -### 5.2 创建标签(版本发布) - -```bash -# 创建版本标签 -git tag -a v1.0.0 -m "版本 1.0.0 - 初始发布" -git push origin v1.0.0 -``` - -### 5.3 创建分支(功能开发) - -```bash -# 创建功能分支 -git checkout -b feature/new-feature -# 开发完成后合并 -git checkout main -git merge feature/new-feature -git push origin main -``` - ---- - -## ⚠️ 重要提醒 - -1. **不要提交敏感信息** - - 数据库密码 - - API密钥 - - JWT密钥 - - 支付宝私钥 - - 腾讯云密钥 - -2. **提交前检查** - ```bash - git status - git diff - ``` - -3. **使用有意义的提交信息** - - 清晰描述本次更改 - - 遵循提交信息规范 - -4. **定期备份** - - 本地备份重要文件 - - 定期推送到远程仓库 - ---- - -## 📝 快速命令 - -```bash -# 一键提交并推送 -git add . && git commit -m "更新代码" && git push origin main - -# 查看提交历史 -git log --oneline -10 - -# 查看远程仓库 -git remote -v - -# 查看当前分支 -git branch -``` - - diff --git a/demo/IJPAY_USAGE_GUIDE.md b/demo/IJPAY_USAGE_GUIDE.md deleted file mode 100644 index 63603a5..0000000 --- a/demo/IJPAY_USAGE_GUIDE.md +++ /dev/null @@ -1,236 +0,0 @@ -# IJPay 使用指南 - -## 一、IJPay 简介 - -IJPay 是一个简洁易用的 Java 聚合支付 SDK,支持微信支付、支付宝支付、银联支付等多种支付方式。 - -项目已集成 IJPay-AliPay 模块,用于支付宝支付功能。 - -## 二、项目中的 IJPay 使用方式 - -### 1. 依赖配置 - -在 `pom.xml` 中已添加 IJPay 依赖: - -```xml - - com.github.javen205 - IJPay-AliPay - 2.9.12.1 - -``` - -### 2. 代码使用方式 - -项目中主要通过 `AlipayController.java` 使用 IJPay 的 `AliPayApi` 类进行支付操作。 - -#### 2.1 扫码支付(QR码支付) - -```java -@PostMapping("/qr-pay") -public ResponseEntity> qrPay(...) { - AlipayTradePrecreateModel model = new AlipayTradePrecreateModel(); - model.setOutTradeNo(outTradeNo); - model.setTotalAmount(totalAmount); - model.setSubject(subject); - model.setBody(body); - - // 使用 IJPay 的 AliPayApi 调用预创建接口 - String qrCode = AliPayApi.tradePrecreatePayToResponse(model, notifyUrl).getBody(); - // 返回二维码字符串 -} -``` - -#### 2.2 PC网页支付 - -```java -@PostMapping("/pc-pay") -public void pcPay(...) { - AlipayTradePagePayModel model = new AlipayTradePagePayModel(); - model.setOutTradeNo(outTradeNo); - model.setProductCode("FAST_INSTANT_TRADE_PAY"); - model.setTotalAmount(totalAmount); - model.setSubject(subject); - - // 使用 IJPay 的 AliPayApi 进行页面跳转 - AliPayApi.tradePage(response, model, notifyUrl, returnUrl); -} -``` - -#### 2.3 手机网页支付 - -```java -@PostMapping("/wap-pay") -public void wapPay(...) { - AlipayTradeWapPayModel model = new AlipayTradeWapPayModel(); - model.setOutTradeNo(outTradeNo); - model.setProductCode("QUICK_WAP_PAY"); - model.setTotalAmount(totalAmount); - - // 使用 IJPay 的 AliPayApi 进行手机支付 - AliPayApi.wapPay(response, model, returnUrl, notifyUrl); -} -``` - -#### 2.4 APP支付 - -```java -@PostMapping("/app-pay") -public ResponseEntity> appPay(...) { - AlipayTradeAppPayModel model = new AlipayTradeAppPayModel(); - model.setOutTradeNo(outTradeNo); - model.setProductCode("QUICK_MSECURITY_PAY"); - model.setTotalAmount(totalAmount); - - // 使用 IJPay 的 AliPayApi 获取 APP 支付订单信息 - String orderInfo = AliPayApi.appPayToResponse(model, notifyUrl).getBody(); - // 返回订单信息给 APP -} -``` - -#### 2.5 订单查询 - -```java -@GetMapping("/query") -public ResponseEntity> queryOrder(...) { - AlipayTradeQueryModel model = new AlipayTradeQueryModel(); - model.setOutTradeNo(outTradeNo); - - // 使用 IJPay 的 AliPayApi 查询订单 - String result = AliPayApi.tradeQueryToResponse(model).getBody(); - // 返回查询结果 -} -``` - -#### 2.6 退款 - -```java -@PostMapping("/refund") -public ResponseEntity> refund(...) { - AlipayTradeRefundModel model = new AlipayTradeRefundModel(); - model.setOutTradeNo(outTradeNo); - model.setRefundAmount(refundAmount); - model.setRefundReason(refundReason); - - // 使用 IJPay 的 AliPayApi 发起退款 - String result = AliPayApi.tradeRefundToResponse(model).getBody(); - // 返回退款结果 -} -``` - -#### 2.7 异步通知处理 - -```java -@PostMapping("/notify") -public String notifyUrl(HttpServletRequest request) { - // 使用 IJPay 的 AliPayApi 将请求参数转换为 Map - Map params = AliPayApi.toMap(request); - - // 验证签名 - boolean verifyResult = AlipaySignature.rsaCertCheckV1( - params, aliPayConfig.getAliPayCertPath(), "UTF-8", "RSA2"); - - if (verifyResult) { - // 处理支付成功逻辑 - return "success"; - } else { - return "failure"; - } -} -``` - -## 三、IJPay 配置说明 - -### 3.1 配置方式 - -IJPay 的 `AliPayApi` 类内部会自动读取系统属性或配置文件中的支付宝配置。 - -需要配置的参数包括: -- `appId`: 支付宝应用ID -- `privateKey`: 应用私钥 -- `publicKey`: 支付宝公钥 -- `gatewayUrl`: 支付宝网关地址 -- `charset`: 字符编码(通常为 UTF-8) -- `signType`: 签名类型(通常为 RSA2) - -### 3.2 配置文件 - -配置在 `application-dev.properties` 或 `application-prod.properties` 中: - -```properties -# 支付宝配置 -alipay.app-id=你的APPID -alipay.private-key=你的应用私钥 -alipay.public-key=支付宝公钥 -alipay.gateway-url=https://openapi.alipaydev.com/gateway.do -alipay.charset=UTF-8 -alipay.sign-type=RSA2 -alipay.notify-url=回调通知地址 -alipay.return-url=同步返回地址 -``` - -### 3.3 IJPay 初始化(可选) - -如果需要显式初始化 IJPay,可以在应用启动时配置: - -```java -@Configuration -public class IJPayConfig { - - @Autowired - private AliPayConfig aliPayConfig; - - @PostConstruct - public void init() { - // IJPay 的 AliPayApi 会自动读取配置 - // 如果需要显式配置,可以使用 AliPayApiConfigKit - // 注意:具体初始化方式取决于 IJPay 版本 - } -} -``` - -## 四、IJPay vs 原生 Alipay SDK - -项目中同时使用了两种方式: - -1. **IJPay (AliPayApi)** - 在 `AlipayController.java` 中使用 - - 优点:封装更简洁,使用更方便 - - 缺点:需要额外依赖 IJPay 库 - -2. **原生 Alipay SDK (DefaultAlipayClient)** - 在 `AlipayService.java` 中使用 - - 优点:官方 SDK,功能完整 - - 缺点:需要手动创建客户端和处理响应 - -## 五、常见问题 - -### Q1: IJPay 如何初始化? - -A: IJPay 的 `AliPayApi` 类内部会自动读取配置,通常不需要显式初始化。如果遇到配置问题,可以检查: -1. 配置文件中的参数是否正确 -2. 系统属性是否设置 -3. 环境变量是否配置 - -### Q2: 如何切换到 IJPay? - -A: 如果当前使用原生 Alipay SDK,可以: -1. 修改 `AlipayService.java`,使用 `AliPayApi` 替代 `DefaultAlipayClient` -2. 或者直接使用 `AlipayController` 中的接口 - -### Q3: IJPay 和原生 SDK 的区别? - -A: IJPay 是对原生 SDK 的封装,提供了更简洁的 API。底层实现仍然使用支付宝官方 SDK。 - -## 六、参考文档 - -- IJPay 官方文档:https://github.com/Javen205/IJPay -- IJPay 示例项目:https://github.com/Javen205/IJPay-Demo -- 支付宝开放平台:https://open.alipay.com - - - - - - - - - diff --git a/demo/IMAGE_TO_VIDEO_API_README.md b/demo/IMAGE_TO_VIDEO_API_README.md deleted file mode 100644 index 296e5b0..0000000 --- a/demo/IMAGE_TO_VIDEO_API_README.md +++ /dev/null @@ -1,303 +0,0 @@ -# 图生视频API配置说明 - -## 概述 - -图生视频API允许用户上传图片并生成视频内容。系统支持首帧图片(必填)和尾帧图片(可选),结合用户描述文字生成动态视频。 - -## 功能特性 - -- ✅ 图片上传(支持JPG、PNG、WEBP格式) -- ✅ 多种视频比例(16:9、4:3、1:1、3:4、9:16) -- ✅ 可调节视频时长(5s、10s、15s、30s) -- ✅ 高清模式(1080P,额外消耗积分) -- ✅ 实时任务状态监控 -- ✅ 进度条显示 -- ✅ 任务取消功能 -- ✅ 积分消耗计算 - -## API接口 - -### 1. 创建图生视频任务 - -**POST** `/api/image-to-video/create` - -**请求参数:** -- `firstFrame` (File, 必填): 首帧图片 -- `lastFrame` (File, 可选): 尾帧图片 -- `prompt` (String, 必填): 描述文字 -- `aspectRatio` (String, 可选): 视频比例,默认"16:9" -- `duration` (Integer, 可选): 视频时长(秒),默认5 -- `hdMode` (Boolean, 可选): 是否高清模式,默认false - -**响应示例:** -```json -{ - "success": true, - "message": "任务创建成功", - "data": { - "id": 1, - "taskId": "img2vid_abc123def456", - "username": "test_user", - "firstFrameUrl": "/uploads/img2vid_abc123def456/first_frame_1234567890.jpg", - "prompt": "测试图生视频", - "aspectRatio": "16:9", - "duration": 5, - "hdMode": false, - "status": "PENDING", - "progress": 0, - "costPoints": 20, - "createdAt": "2025-01-24T10:30:00" - } -} -``` - -### 2. 获取用户任务列表 - -**GET** `/api/image-to-video/tasks` - -**查询参数:** -- `page` (Integer, 可选): 页码,默认0 -- `size` (Integer, 可选): 每页数量,默认10 - -**响应示例:** -```json -{ - "success": true, - "data": [ - { - "taskId": "img2vid_abc123def456", - "status": "COMPLETED", - "progress": 100, - "resultUrl": "/outputs/img2vid_abc123def456/video_1234567890.mp4", - "createdAt": "2025-01-24T10:30:00" - } - ], - "total": 1, - "page": 0, - "size": 10 -} -``` - -### 3. 获取任务详情 - -**GET** `/api/image-to-video/tasks/{taskId}` - -**响应示例:** -```json -{ - "success": true, - "data": { - "taskId": "img2vid_abc123def456", - "username": "test_user", - "firstFrameUrl": "/uploads/img2vid_abc123def456/first_frame_1234567890.jpg", - "prompt": "测试图生视频", - "aspectRatio": "16:9", - "duration": 5, - "hdMode": false, - "status": "COMPLETED", - "progress": 100, - "resultUrl": "/outputs/img2vid_abc123def456/video_1234567890.mp4", - "costPoints": 20, - "createdAt": "2025-01-24T10:30:00", - "completedAt": "2025-01-24T10:35:00" - } -} -``` - -### 4. 获取任务状态 - -**GET** `/api/image-to-video/tasks/{taskId}/status` - -**响应示例:** -```json -{ - "success": true, - "data": { - "id": "img2vid_abc123def456", - "status": "PROCESSING", - "progress": 45, - "resultUrl": null, - "errorMessage": null - } -} -``` - -### 5. 取消任务 - -**POST** `/api/image-to-video/tasks/{taskId}/cancel` - -**响应示例:** -```json -{ - "success": true, - "message": "任务已取消" -} -``` - -## 任务状态说明 - -| 状态 | 描述 | 说明 | -|------|------|------| -| PENDING | 等待中 | 任务已创建,等待处理 | -| PROCESSING | 处理中 | 正在生成视频 | -| COMPLETED | 已完成 | 视频生成成功 | -| FAILED | 失败 | 生成过程中出现错误 | -| CANCELLED | 已取消 | 用户主动取消任务 | - -## 积分消耗计算 - -- **基础消耗**: 10积分 -- **时长消耗**: 时长(秒) × 2积分 -- **高清模式**: 额外20积分 - -**示例:** -- 5秒普通视频:10 + 5×2 = 20积分 -- 10秒高清视频:10 + 10×2 + 20 = 50积分 - -## 前端集成示例 - -### 1. 创建任务 - -```javascript -import { imageToVideoApi } from '@/api/imageToVideo' - -const createTask = async () => { - const params = { - firstFrame: firstFrameFile.value, - lastFrame: lastFrameFile.value, // 可选 - prompt: inputText.value.trim(), - aspectRatio: aspectRatio.value, - duration: parseInt(duration.value), - hdMode: hdMode.value - } - - try { - const response = await imageToVideoApi.createTask(params) - if (response.data.success) { - console.log('任务创建成功:', response.data.data) - // 开始轮询任务状态 - startPollingTask(response.data.data.taskId) - } - } catch (error) { - console.error('创建任务失败:', error) - } -} -``` - -### 2. 轮询任务状态 - -```javascript -const startPollingTask = (taskId) => { - const stopPolling = imageToVideoApi.pollTaskStatus( - taskId, - // 进度回调 - (progressData) => { - console.log('任务进度:', progressData.progress + '%') - updateProgressBar(progressData.progress) - }, - // 完成回调 - (taskData) => { - console.log('任务完成:', taskData.resultUrl) - showResult(taskData.resultUrl) - }, - // 错误回调 - (error) => { - console.error('任务失败:', error.message) - showError(error.message) - } - ) - - // 可以调用 stopPolling() 来停止轮询 -} -``` - -## 文件上传限制 - -- **文件大小**: 最大10MB -- **支持格式**: JPG、PNG、WEBP -- **存储路径**: `/uploads/{taskId}/` -- **输出路径**: `/outputs/{taskId}/` - -## 数据库表结构 - -```sql -CREATE TABLE image_to_video_tasks ( - id BIGINT AUTO_INCREMENT PRIMARY KEY, - task_id VARCHAR(50) NOT NULL UNIQUE, - username VARCHAR(100) NOT NULL, - first_frame_url VARCHAR(500) NOT NULL, - last_frame_url VARCHAR(500), - prompt TEXT, - aspect_ratio VARCHAR(10) NOT NULL DEFAULT '16:9', - duration INT NOT NULL DEFAULT 5, - hd_mode BOOLEAN NOT NULL DEFAULT FALSE, - status VARCHAR(20) NOT NULL DEFAULT 'PENDING', - progress INT DEFAULT 0, - result_url VARCHAR(500), - error_message TEXT, - cost_points INT DEFAULT 0, - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, - updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - completed_at TIMESTAMP NULL -); -``` - -## 部署注意事项 - -1. **文件存储**: 确保 `uploads` 和 `outputs` 目录有写入权限 -2. **异步处理**: 已启用 `@EnableAsync` 支持异步任务处理 -3. **安全配置**: 图生视频API需要用户认证 -4. **CORS配置**: 已配置支持前端跨域访问 -5. **文件大小**: 已设置最大上传文件大小为10MB - -## 测试方法 - -1. 启动后端服务 -2. 运行测试脚本:`./test-image-to-video-api.sh` -3. 或使用前端页面进行测试 - -## 故障排除 - -### 常见问题 - -1. **文件上传失败** - - 检查文件大小是否超过10MB - - 确认文件格式是否支持 - - 检查服务器存储权限 - -2. **任务状态不更新** - - 检查异步处理是否正常 - - 查看服务器日志 - - 确认数据库连接正常 - -3. **前端轮询失败** - - 检查网络连接 - - 确认API接口地址正确 - - 查看浏览器控制台错误 - -### 日志查看 - -```bash -# 查看应用日志 -tail -f logs/application.log - -# 查看特定任务日志 -grep "img2vid_abc123def456" logs/application.log -``` - - - - - - - - - - - - - - - - - diff --git a/demo/LINUX_DEPLOYMENT_GUIDE.md b/demo/LINUX_DEPLOYMENT_GUIDE.md deleted file mode 100644 index e7ced29..0000000 --- a/demo/LINUX_DEPLOYMENT_GUIDE.md +++ /dev/null @@ -1,846 +0,0 @@ -# 🐧 Linux 云端部署完整指南 - -本文档提供将项目打包并部署到Linux云服务器的完整步骤。 - ---- - -## 📦 一、本地打包(Windows/Mac) - -### 1.1 打包后端JAR文件 - -在项目根目录(`demo/`)执行: - -```bash -# Windows (PowerShell) -.\mvnw.cmd clean package -DskipTests - -# Linux/Mac -./mvnw clean package -DskipTests -``` - -打包成功后,JAR文件位置: -``` -demo/target/demo-0.0.1-SNAPSHOT.jar -``` - -### 1.2 打包前端 - -```bash -# 进入前端目录 -cd frontend - -# 安装依赖(首次需要) -npm install - -# 构建生产版本 -npm run build -``` - -构建成功后,前端文件位置: -``` -demo/frontend/dist/ -``` - -### 1.3 准备部署文件 - -创建部署包目录结构: - -```bash -# 在项目根目录创建部署包 -mkdir -p deploy-package -mkdir -p deploy-package/backend -mkdir -p deploy-package/frontend -mkdir -p deploy-package/scripts -mkdir -p deploy-package/config - -# 复制文件 -cp target/demo-0.0.1-SNAPSHOT.jar deploy-package/backend/ -cp -r frontend/dist/* deploy-package/frontend/ -cp deploy.sh deploy-package/scripts/ -``` - ---- - -## 🚀 二、服务器环境准备 - -### 2.1 连接服务器 - -```bash -# 使用SSH连接服务器 -ssh username@your-server-ip - -# 或使用密钥 -ssh -i ~/.ssh/your-key.pem username@your-server-ip -``` - -### 2.2 安装必需软件 - -#### Ubuntu/Debian - -```bash -# 更新系统 -sudo apt update && sudo apt upgrade -y - -# 安装Java 21 -sudo apt install -y openjdk-21-jdk - -# 验证Java安装 -java -version -# 应该显示: openjdk version "21.x.x" - -# 安装MySQL 8.0 -sudo apt install -y mysql-server - -# 启动MySQL服务 -sudo systemctl start mysql -sudo systemctl enable mysql - -# 安装FFmpeg(视频处理需要) -sudo apt install -y ffmpeg - -# 验证FFmpeg安装 -ffmpeg -version - -# 安装Nginx(反向代理) -sudo apt install -y nginx - -# 安装Maven(可选,用于重新构建) -sudo apt install -y maven -``` - -#### CentOS/RHEL - -```bash -# 更新系统 -sudo yum update -y - -# 安装Java 21 -sudo yum install -y java-21-openjdk java-21-openjdk-devel - -# 安装MySQL 8.0 -sudo yum install -y mysql-server - -# 启动MySQL服务 -sudo systemctl start mysqld -sudo systemctl enable mysqld - -# 安装FFmpeg -sudo yum install -y epel-release -sudo yum install -y ffmpeg - -# 安装Nginx -sudo yum install -y nginx -``` - -### 2.3 创建应用目录 - -```bash -# 创建应用目录结构 -sudo mkdir -p /app/aigc-platform -sudo mkdir -p /app/aigc-platform/{logs,uploads,temp,config,backend,frontend} - -# 设置权限 -sudo chown -R $USER:$USER /app/aigc-platform -chmod -R 755 /app/aigc-platform -``` - ---- - -## 🗄️ 三、数据库配置 - -### 3.1 配置MySQL - -```bash -# 安全配置MySQL(首次安装) -sudo mysql_secure_installation - -# 登录MySQL -sudo mysql -u root -p -``` - -### 3.2 创建数据库和用户 - -```sql --- 创建数据库 -CREATE DATABASE aigc_platform CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - --- 创建用户(替换'your_password'为强密码) -CREATE USER 'aigc_user'@'localhost' IDENTIFIED BY 'your_password'; - --- 授予权限 -GRANT ALL PRIVILEGES ON aigc_platform.* TO 'aigc_user'@'localhost'; -FLUSH PRIVILEGES; - --- 退出 -EXIT; -``` - -### 3.3 优化MySQL配置 - -编辑MySQL配置文件: - -```bash -# Ubuntu/Debian -sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf - -# CentOS/RHEL -sudo nano /etc/my.cnf -``` - -添加/修改以下配置: - -```ini -[mysqld] -# 字符集 -character-set-server=utf8mb4 -collation-server=utf8mb4_unicode_ci - -# 连接数(50人并发) -max_connections=100 -max_user_connections=50 - -# 缓冲池(根据内存调整,8GB服务器建议2-4GB) -innodb_buffer_pool_size=2G - -# 日志 -slow_query_log=1 -slow_query_log_file=/var/log/mysql/slow-query.log -long_query_time=2 - -# 时区 -default-time-zone='+08:00' -``` - -重启MySQL: - -```bash -sudo systemctl restart mysql -``` - ---- - -## 📤 四、上传文件到服务器 - -### 4.1 使用SCP上传(推荐) - -在**本地**执行: - -```bash -# 上传JAR文件 -scp target/demo-0.0.1-SNAPSHOT.jar username@your-server-ip:/app/aigc-platform/backend/ - -# 上传前端文件 -scp -r frontend/dist/* username@your-server-ip:/app/aigc-platform/frontend/ - -# 或使用rsync(更高效) -rsync -avz frontend/dist/ username@your-server-ip:/app/aigc-platform/frontend/ -``` - -### 4.2 使用FTP/SFTP工具 - -使用FileZilla、WinSCP等工具上传文件到: -- JAR文件 → `/app/aigc-platform/backend/` -- 前端文件 → `/app/aigc-platform/frontend/` - -### 4.3 使用Git(如果服务器有Git) - -```bash -# 在服务器上克隆仓库 -cd /app/aigc-platform -git clone ssh://git@your-git-server/path/to/repo.git - -# 构建 -cd repo/demo -./mvnw clean package -DskipTests -cp target/demo-0.0.1-SNAPSHOT.jar /app/aigc-platform/backend/ -``` - ---- - -## ⚙️ 五、应用配置 - -### 5.1 创建配置文件 - -在服务器上创建配置文件: - -```bash -# 创建生产环境配置 -sudo nano /app/aigc-platform/config/application-prod.properties -``` - -配置文件内容: - -```properties -# 数据库配置 -spring.datasource.url=jdbc:mysql://localhost:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai -spring.datasource.username=aigc_user -spring.datasource.password=your_password -spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver - -# 连接池配置(50人并发) -spring.datasource.hikari.maximum-pool-size=30 -spring.datasource.hikari.minimum-idle=10 -spring.datasource.hikari.connection-timeout=30000 -spring.datasource.hikari.idle-timeout=600000 -spring.datasource.hikari.max-lifetime=1800000 - -# JPA配置 -spring.jpa.hibernate.ddl-auto=update -spring.jpa.show-sql=false -spring.jpa.properties.hibernate.format_sql=true -spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect - -# 服务器配置 -server.port=8080 -server.tomcat.threads.max=150 -server.tomcat.threads.min-spare=20 -server.tomcat.max-connections=200 -server.tomcat.accept-count=100 - -# JWT配置 -jwt.secret=your-jwt-secret-key-change-this-to-random-string -jwt.expiration=86400000 - -# AI API配置(从环境变量读取) -ai.api.base-url=${AI_API_BASE_URL:https://api.openai.com} -ai.api.key=${AI_API_KEY:your-api-key} -ai.image.api.base-url=${AI_IMAGE_API_BASE_URL:https://api.openai.com} -ai.image.api.key=${AI_IMAGE_API_KEY:your-api-key} - -# 文件上传配置 -app.upload.path=${UPLOAD_PATH:/app/aigc-platform/uploads} -spring.servlet.multipart.max-file-size=100MB -spring.servlet.multipart.max-request-size=100MB - -# 日志配置 -logging.level.root=INFO -logging.level.com.example.demo=DEBUG -logging.file.path=/app/aigc-platform/logs -logging.file.name=${logging.file.path}/application.log -logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n - -# 时区 -spring.jackson.time-zone=Asia/Shanghai -``` - -### 5.2 创建环境变量文件(可选) - -```bash -sudo nano /app/aigc-platform/config/.env -``` - -```bash -# 数据库配置 -export DB_URL="jdbc:mysql://localhost:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai" -export DB_USERNAME="aigc_user" -export DB_PASSWORD="your_password" - -# JWT密钥(生成随机密钥) -export JWT_SECRET="$(openssl rand -base64 64)" - -# AI API密钥 -export AI_API_KEY="your-api-key" -export AI_IMAGE_API_KEY="your-api-key" - -# 文件路径 -export UPLOAD_PATH="/app/aigc-platform/uploads" -export TEMP_DIR="/app/aigc-platform/temp" -export FFMPEG_PATH="/usr/bin/ffmpeg" -``` - ---- - -## 🔧 六、创建Systemd服务 - -### 6.1 创建服务文件 - -```bash -sudo nano /etc/systemd/system/aigc-platform.service -``` - -服务文件内容: - -```ini -[Unit] -Description=AIGC Platform Application -After=network.target mysql.service -Requires=mysql.service - -[Service] -Type=simple -User=your-username -Group=your-group -WorkingDirectory=/app/aigc-platform/backend - -# 环境变量(可选,如果使用.env文件) -# EnvironmentFile=/app/aigc-platform/config/.env - -# JVM参数(根据服务器内存调整) -# 8GB内存服务器建议:-Xms1g -Xmx4g -# 16GB内存服务器建议:-Xms2g -Xmx8g -ExecStart=/usr/bin/java \ - -Xms1g \ - -Xmx4g \ - -XX:+UseG1GC \ - -XX:MaxGCPauseMillis=200 \ - -Dspring.profiles.active=prod \ - -Dspring.config.location=file:/app/aigc-platform/config/application-prod.properties \ - -jar /app/aigc-platform/backend/demo-0.0.1-SNAPSHOT.jar - -# 重启策略 -Restart=always -RestartSec=10 - -# 日志 -StandardOutput=journal -StandardError=journal -SyslogIdentifier=aigc-platform - -# 安全设置 -NoNewPrivileges=true -PrivateTmp=true - -[Install] -WantedBy=multi-user.target -``` - -**重要:** 将 `your-username` 和 `your-group` 替换为实际的用户名和组。 - -### 6.2 启动服务 - -```bash -# 重新加载systemd配置 -sudo systemctl daemon-reload - -# 启用服务(开机自启) -sudo systemctl enable aigc-platform - -# 启动服务 -sudo systemctl start aigc-platform - -# 查看服务状态 -sudo systemctl status aigc-platform - -# 查看日志 -sudo journalctl -u aigc-platform -f -``` - -### 6.3 常用服务管理命令 - -```bash -# 启动服务 -sudo systemctl start aigc-platform - -# 停止服务 -sudo systemctl stop aigc-platform - -# 重启服务 -sudo systemctl restart aigc-platform - -# 查看状态 -sudo systemctl status aigc-platform - -# 查看日志 -sudo journalctl -u aigc-platform -n 100 -f - -# 查看最近错误 -sudo journalctl -u aigc-platform -p err -n 50 -``` - ---- - -## 🌐 七、Nginx反向代理配置 - -### 7.1 创建Nginx配置 - -```bash -sudo nano /etc/nginx/sites-available/aigc-platform -``` - -配置内容: - -```nginx -# HTTP服务器(重定向到HTTPS) -server { - listen 80; - server_name your-domain.com www.your-domain.com; - - # 重定向到HTTPS - return 301 https://$server_name$request_uri; -} - -# HTTPS服务器 -server { - listen 443 ssl http2; - server_name your-domain.com www.your-domain.com; - - # SSL证书配置(使用Let's Encrypt) - ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem; - ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem; - ssl_protocols TLSv1.2 TLSv1.3; - ssl_ciphers HIGH:!aNULL:!MD5; - ssl_prefer_server_ciphers on; - - # 日志 - access_log /var/log/nginx/aigc-platform-access.log; - error_log /var/log/nginx/aigc-platform-error.log; - - # 客户端最大上传大小 - client_max_body_size 100M; - - # API代理 - location /api/ { - proxy_pass http://localhost:8080; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - - # WebSocket支持(如果需要) - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "upgrade"; - - # 超时设置 - proxy_connect_timeout 60s; - proxy_send_timeout 60s; - proxy_read_timeout 60s; - } - - # 上传文件代理 - location /uploads/ { - proxy_pass http://localhost:8080; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - - # 缓存设置 - expires 7d; - add_header Cache-Control "public, immutable"; - } - - # 前端静态文件 - location / { - root /app/aigc-platform/frontend; - index index.html; - try_files $uri $uri/ /index.html; - - # 缓存设置 - location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ { - expires 1y; - add_header Cache-Control "public, immutable"; - } - } - - # 健康检查 - location /health { - proxy_pass http://localhost:8080/actuator/health; - access_log off; - } -} -``` - -### 7.2 启用配置 - -```bash -# 创建符号链接 -sudo ln -s /etc/nginx/sites-available/aigc-platform /etc/nginx/sites-enabled/ - -# 测试配置 -sudo nginx -t - -# 重新加载Nginx -sudo systemctl reload nginx -``` - -### 7.3 配置SSL证书(Let's Encrypt) - -```bash -# 安装Certbot -sudo apt install -y certbot python3-certbot-nginx - -# 获取证书(自动配置Nginx) -sudo certbot --nginx -d your-domain.com -d www.your-domain.com - -# 测试自动续期 -sudo certbot renew --dry-run -``` - ---- - -## ✅ 八、验证部署 - -### 8.1 检查服务状态 - -```bash -# 检查应用服务 -sudo systemctl status aigc-platform - -# 检查MySQL服务 -sudo systemctl status mysql - -# 检查Nginx服务 -sudo systemctl status nginx - -# 检查端口占用 -sudo netstat -tlnp | grep -E '8080|80|443' -``` - -### 8.2 测试API - -```bash -# 测试健康检查 -curl http://localhost:8080/actuator/health - -# 测试API(需要认证) -curl -X POST http://localhost:8080/api/auth/login \ - -H "Content-Type: application/json" \ - -d '{"username":"test","password":"test"}' -``` - -### 8.3 测试前端 - -在浏览器中访问: -- HTTP: `http://your-server-ip` -- HTTPS: `https://your-domain.com` - -### 8.4 检查日志 - -```bash -# 应用日志 -tail -f /app/aigc-platform/logs/application.log - -# 系统日志 -sudo journalctl -u aigc-platform -f - -# Nginx日志 -sudo tail -f /var/log/nginx/aigc-platform-access.log -sudo tail -f /var/log/nginx/aigc-platform-error.log -``` - ---- - -## 🔄 九、更新部署 - -### 9.1 更新后端 - -```bash -# 1. 停止服务 -sudo systemctl stop aigc-platform - -# 2. 备份旧版本 -cp /app/aigc-platform/backend/demo-0.0.1-SNAPSHOT.jar \ - /app/aigc-platform/backend/demo-0.0.1-SNAPSHOT.jar.backup - -# 3. 上传新版本(从本地) -# scp target/demo-0.0.1-SNAPSHOT.jar username@server:/app/aigc-platform/backend/ - -# 4. 启动服务 -sudo systemctl start aigc-platform - -# 5. 检查状态 -sudo systemctl status aigc-platform -``` - -### 9.2 更新前端 - -```bash -# 1. 备份旧版本 -cp -r /app/aigc-platform/frontend /app/aigc-platform/frontend.backup - -# 2. 上传新版本(从本地) -# scp -r frontend/dist/* username@server:/app/aigc-platform/frontend/ - -# 3. 重新加载Nginx -sudo systemctl reload nginx -``` - ---- - -## 🛠️ 十、故障排查 - -### 10.1 应用无法启动 - -```bash -# 查看详细日志 -sudo journalctl -u aigc-platform -n 100 - -# 检查Java版本 -java -version - -# 检查端口占用 -sudo lsof -i :8080 - -# 检查文件权限 -ls -la /app/aigc-platform/backend/ -``` - -### 10.2 数据库连接失败 - -```bash -# 测试MySQL连接 -mysql -u aigc_user -p aigc_platform - -# 检查MySQL服务 -sudo systemctl status mysql - -# 查看MySQL日志 -sudo tail -f /var/log/mysql/error.log -``` - -### 10.3 Nginx配置错误 - -```bash -# 测试配置 -sudo nginx -t - -# 查看错误日志 -sudo tail -f /var/log/nginx/error.log -``` - -### 10.4 内存不足 - -```bash -# 查看内存使用 -free -h - -# 查看Java进程内存 -ps aux | grep java - -# 调整JVM参数(在systemd服务文件中) -# -Xms1g -Xmx4g # 减少内存使用 -``` - ---- - -## 📊 十一、性能监控 - -### 11.1 系统监控 - -```bash -# CPU和内存使用 -top -htop # 如果安装了 - -# 磁盘使用 -df -h - -# 网络连接 -netstat -an | grep ESTABLISHED | wc -l -``` - -### 11.2 应用监控 - -```bash -# 查看JVM内存使用 -jstat -gc 1000 - -# 查看线程 -jstack - -# 查看应用日志 -tail -f /app/aigc-platform/logs/application.log | grep ERROR -``` - ---- - -## 🔒 十二、安全建议 - -1. **防火墙配置** - ```bash - # 只开放必要端口 - sudo ufw allow 22/tcp # SSH - sudo ufw allow 80/tcp # HTTP - sudo ufw allow 443/tcp # HTTPS - sudo ufw enable - ``` - -2. **定期备份** - ```bash - # 备份数据库 - mysqldump -u aigc_user -p aigc_platform > backup_$(date +%Y%m%d).sql - - # 备份上传文件 - tar -czf uploads_backup_$(date +%Y%m%d).tar.gz /app/aigc-platform/uploads - ``` - -3. **更新系统** - ```bash - sudo apt update && sudo apt upgrade -y - ``` - ---- - -## 📝 快速部署脚本 - -创建一键部署脚本 `deploy-linux.sh`: - -```bash -#!/bin/bash -set -e - -echo "🚀 开始部署 AIGC 平台..." - -# 检查Java -if ! command -v java &> /dev/null; then - echo "❌ Java未安装,请先安装Java 21" - exit 1 -fi - -# 检查MySQL -if ! systemctl is-active --quiet mysql; then - echo "❌ MySQL服务未运行" - exit 1 -fi - -# 停止服务 -echo "🛑 停止服务..." -sudo systemctl stop aigc-platform || true - -# 备份 -echo "💾 备份旧版本..." -BACKUP_DIR="/app/aigc-platform/backup/$(date +%Y%m%d_%H%M%S)" -mkdir -p $BACKUP_DIR -cp /app/aigc-platform/backend/demo-0.0.1-SNAPSHOT.jar $BACKUP_DIR/ || true - -# 启动服务 -echo "▶️ 启动服务..." -sudo systemctl start aigc-platform - -# 等待启动 -sleep 5 - -# 检查状态 -if systemctl is-active --quiet aigc-platform; then - echo "✅ 部署成功!" - sudo systemctl status aigc-platform -else - echo "❌ 部署失败,查看日志:" - sudo journalctl -u aigc-platform -n 50 - exit 1 -fi -``` - -使用: -```bash -chmod +x deploy-linux.sh -./deploy-linux.sh -``` - ---- - -## 📞 支持 - -如遇问题,请检查: -1. 日志文件:`/app/aigc-platform/logs/application.log` -2. 系统日志:`sudo journalctl -u aigc-platform` -3. Nginx日志:`/var/log/nginx/aigc-platform-error.log` - ---- - -**部署完成后,访问:** -- 前端:`https://your-domain.com` -- API:`https://your-domain.com/api` -- 健康检查:`https://your-domain.com/health` - diff --git a/demo/LINUX_DEPLOY_COMMANDS.sh b/demo/LINUX_DEPLOY_COMMANDS.sh new file mode 100644 index 0000000..a8621b3 --- /dev/null +++ b/demo/LINUX_DEPLOY_COMMANDS.sh @@ -0,0 +1,80 @@ +#!/bin/bash +# Linux服务器部署命令脚本 +# 使用方法: bash LINUX_DEPLOY_COMMANDS.sh + +set -e # 遇到错误立即退出 + +echo "============================================================" +echo "开始部署 Spring Boot + Vue 项目" +echo "============================================================" + +# 进入项目目录 +cd /home/ubuntu/spring-vue-app || cd ~/spring-vue-app || exit 1 + +echo "" +echo "步骤 1: 检查 Dockerfile" +echo "============================================================" +if [ -f "backend/Dockerfile" ]; then + echo "✅ 找到 backend/Dockerfile" + echo "检查使用的镜像:" + grep "FROM" backend/Dockerfile | head -2 +else + echo "❌ 未找到 backend/Dockerfile" + exit 1 +fi + +echo "" +echo "步骤 2: 构建 Docker 镜像" +echo "============================================================" +sudo docker-compose build --no-cache + +echo "" +echo "步骤 3: 启动服务" +echo "============================================================" +sudo docker-compose up -d + +echo "" +echo "步骤 4: 等待服务启动(30秒)" +echo "============================================================" +sleep 30 + +echo "" +echo "步骤 5: 检查服务状态" +echo "============================================================" +sudo docker-compose ps + +echo "" +echo "步骤 6: 健康检查" +echo "============================================================" +# 检查后端健康状态(不依赖Actuator,直接检查根路径) +if curl -f http://localhost:8080/ > /dev/null 2>&1; then + echo "✅ 后端服务健康检查通过" +else + echo "⚠️ 后端服务可能还在启动中,请稍后检查" + echo "查看日志: sudo docker-compose logs backend" +fi + +# 检查前端 +if curl -f http://localhost/ > /dev/null 2>&1; then + echo "✅ 前端服务健康检查通过" +else + echo "⚠️ 前端服务可能还在启动中,请稍后检查" + echo "查看日志: sudo docker-compose logs frontend" +fi + +echo "" +echo "============================================================" +echo "✅ 部署完成!" +echo "============================================================" +echo "" +echo "访问地址:" +echo " 前端: http://localhost" +echo " 后端: http://localhost:8080" +echo "" +echo "常用命令:" +echo " 查看日志: sudo docker-compose logs -f" +echo " 停止服务: sudo docker-compose down" +echo " 重启服务: sudo docker-compose restart" +echo "============================================================" + + diff --git a/demo/LINUX_DEPLOY_SCRIPT.sh b/demo/LINUX_DEPLOY_SCRIPT.sh new file mode 100644 index 0000000..a45dcf9 --- /dev/null +++ b/demo/LINUX_DEPLOY_SCRIPT.sh @@ -0,0 +1,76 @@ +# Linux服务器部署命令(已修改为使用正确的镜像) + +cd /home/ubuntu/spring-vue-app/backend + +# 创建/更新 Dockerfile(使用正确的镜像) +cat > Dockerfile << 'EOF' +# 多阶段构建:构建阶段 +FROM maven:3.9-eclipse-temurin-21 AS builder +WORKDIR /app + +# 复制 pom.xml 并下载依赖(利用Docker缓存) +COPY pom.xml . +RUN mvn dependency:go-offline -B || true + +# 复制源码 +COPY src ./src + +# 打包应用(跳过测试) +RUN mvn clean package -DskipTests -B + +# 生产阶段 +FROM eclipse-temurin:21-jre +WORKDIR /app + +# 安装时区支持和wget(健康检查) +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + tzdata \ + wget \ + curl && \ + ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ + echo "Asia/Shanghai" > /etc/timezone && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# 创建非root用户(安全考虑) +RUN groupadd -r spring && useradd -r -g spring spring + +# 创建必要的目录并设置权限 +RUN mkdir -p /app/uploads /app/temp /app/logs && \ + chown -R spring:spring /app + +# 从构建阶段复制JAR文件(项目生成的JAR文件名:demo-0.0.1-SNAPSHOT.jar) +COPY --from=builder --chown=spring:spring /app/target/demo-0.0.1-SNAPSHOT.jar app.jar + +# 切换到非root用户 +USER spring + +EXPOSE 8080 + +# JVM 参数优化(适配50人并发,建议2-4GB内存) +ENV JAVA_OPTS="-Xmx2g -Xms1g -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Djava.security.egd=file:/dev/./urandom" + +# 健康检查(检查应用是否响应,不依赖Actuator) +HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ + CMD wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1 + +ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar app.jar"] +EOF + +# 返回项目根目录 +cd /home/ubuntu/spring-vue-app + +# 构建并启动服务 +sudo docker-compose build --no-cache +sudo docker-compose up -d + +# 等待服务启动 +sleep 30 + +# 检查服务状态 +sudo docker-compose ps + +# 健康检查(不依赖Actuator,直接检查根路径) +curl -f http://localhost:8080/ || echo "后端服务可能还在启动中,请稍后检查" +curl -f http://localhost/ || echo "前端服务可能还在启动中,请稍后检查" diff --git a/demo/LOGIC_ERROR_ANALYSIS.md b/demo/LOGIC_ERROR_ANALYSIS.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/LOGIC_ERROR_ANALYSIS.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/LOGIN_CONFIGURATION_GUIDE.md b/demo/LOGIN_CONFIGURATION_GUIDE.md deleted file mode 100644 index fa103f6..0000000 --- a/demo/LOGIN_CONFIGURATION_GUIDE.md +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/demo/LOGIN_FIX_SUMMARY.md b/demo/LOGIN_FIX_SUMMARY.md new file mode 100644 index 0000000..d1fdb6f --- /dev/null +++ b/demo/LOGIN_FIX_SUMMARY.md @@ -0,0 +1,194 @@ +# 登录验证码403错误修复总结 + +## 问题描述 +从宝塔面板日志和前端截图显示: +- 请求地址:`POST http://43.156.12.172/api/verification/email/send` +- 错误状态:403 Forbidden +- 问题:无法发送邮箱验证码 + +## 根本原因 +1. **CORS跨域问题**:后端 SecurityConfig 中没有配置允许 43.x.x.x IP段的跨域访问 +2. **JWT过滤器问题**:虽然配置了 `permitAll()`,但 JWT 过滤器仍然会处理所有请求,包括登录请求 +3. **前端token处理问题**:登录请求也携带了 token,导致认证流程混乱 + +## 修复方案 + +### 1. 后端修改 + +#### 修改1:SecurityConfig.java - CORS配置 +**文件路径**: `src/main/java/com/example/demo/config/SecurityConfig.java` +**修改位置**: 第136-140行 + +添加对云服务器IP段的CORS支持: +```java +// 云服务器 IP 段(43.x.x.x) +"http://43.*.*.*:*", +"https://43.*.*.*:*", +"http://43.*.*.*", +"https://43.*.*.*", +``` + +#### 修改2:JwtAuthenticationFilter.java - 跳过公开路径 +**文件路径**: `src/main/java/com/example/demo/security/JwtAuthenticationFilter.java` +**修改位置**: 第40-122行 + +添加公开路径列表,JWT过滤器直接放行这些路径: +```java +// 定义不需要JWT验证的路径 +String[] publicPaths = { + "/api/auth/login", + "/api/auth/login/email", + "/api/auth/register", + "/api/verification/", + "/api/public/", + "/api/email/", + "/api/payments/alipay/notify", + "/api/payments/alipay/return", + "/swagger-ui", + "/v3/api-docs", + "/api-docs" +}; + +// 如果是公开路径,直接放行,不进行JWT验证 +if (isPublicPath) { + filterChain.doFilter(request, response); + return; +} +``` + +### 2. 前端修改 + +#### 修改1:request.js - 请求拦截器 +**文件路径**: `frontend/src/api/request.js` +**修改位置**: 第22-58行 + +登录相关请求不携带token: +```javascript +// 登录相关的接口不需要添加token +const loginUrls = [ + '/auth/login', + '/auth/login/email', + '/auth/register', + '/verification/email/send', + '/verification/email/verify', + '/verification/email/dev-set', + '/public/' +] + +// 检查当前请求是否是登录相关接口 +const isLoginRequest = loginUrls.some(url => config.url.includes(url)) + +if (!isLoginRequest) { + // 非登录请求才添加Authorization头 + const token = sessionStorage.getItem('token') + if (token && token !== 'null' && token.trim() !== '') { + config.headers.Authorization = `Bearer ${token}` + } +} +``` + +#### 修改2:request.js - 响应拦截器 +**文件路径**: `frontend/src/api/request.js` +**修改位置**: 第60-177行 + +区分登录请求和非登录请求的错误处理: +- 只有非登录请求出现401/302错误时才清除token并跳转 +- 登录请求的403错误显示具体错误信息,不显示"权限不足" + +## 部署步骤 + +### 1. 重新编译后端 +```bash +cd C:\Users\UI\Desktop\AIGC\demo +mvn clean package -DskipTests +``` + +### 2. 停止旧的后端服务 +在宝塔面板中停止当前运行的 Java 应用 + +### 3. 上传新的 JAR 包 +将 `target/demo-0.0.1-SNAPSHOT.jar` 上传到服务器 + +### 4. 重启后端服务 +在宝塔面板中启动 Java 应用,或使用命令: +```bash +java -jar demo-0.0.1-SNAPSHOT.jar +``` + +### 5. 重新编译前端(可选) +```bash +cd frontend +npm run build +``` + +### 6. 清除浏览器缓存 +清除浏览器的缓存和 sessionStorage + +## 验证步骤 + +1. 访问登录页面:`http://43.156.12.172` +2. 输入邮箱地址 +3. 点击"获取验证码"按钮 +4. 应该看到以下日志: + ``` + JWT过滤器: 跳过公开路径 /api/verification/email/send + ``` +5. 验证码应该成功发送,不再出现403错误 +6. 输入验证码,完成登录 +7. 登录成功后,所有后续请求都会自动携带token + +## 技术要点 + +### 登录流程 +1. **登录前**:所有登录相关的请求(发送验证码、登录、注册)不携带token +2. **登录中**:后端验证验证码,生成JWT token返回 +3. **登录后**:前端保存token,所有后续请求自动携带token进行认证 + +### 安全性 +- JWT过滤器只处理需要认证的请求 +- 公开路径(登录、注册、验证码)完全跳过JWT验证 +- CORS配置支持多种环境(本地开发、内网、云服务器、ngrok) + +### 错误处理 +- 登录请求失败不会触发"重新登录"跳转 +- 非登录请求未认证才会跳转到登录页 +- 403错误根据请求类型显示不同提示 + +## 预期效果 + +修复后,登录流程应该如下: +1. ✅ 访问登录页面正常 +2. ✅ 点击"获取验证码"成功发送(不再403) +3. ✅ 输入验证码后登录成功 +4. ✅ 登录后所有功能正常使用 +5. ✅ Token过期或无效时自动跳转登录页 + +## 注意事项 + +1. 确保后端和前端都重新编译部署 +2. 清除浏览器缓存避免旧代码影响 +3. 检查宝塔面板日志确认修改生效 +4. 如果还有问题,检查后端日志中的具体错误信息 + +## 相关文件清单 + +### 后端文件 +- `src/main/java/com/example/demo/config/SecurityConfig.java` +- `src/main/java/com/example/demo/security/JwtAuthenticationFilter.java` + +### 前端文件 +- `frontend/src/api/request.js` + +### 配置文件 +- `frontend/.env.production` +- `frontend/vite.config.js` + +## 问题排查 + +如果修复后仍有问题,请检查: + +1. **后端日志**:查看是否有异常堆栈 +2. **CORS头**:使用浏览器开发者工具查看响应头 +3. **请求头**:确认登录请求没有 Authorization 头 +4. **网络**:确认服务器防火墙允许访问 +5. **端口**:确认后端监听在正确的端口(8080) diff --git a/demo/NGINX_INTRANET_TUNNEL.md b/demo/NGINX_INTRANET_TUNNEL.md deleted file mode 100644 index 5501455..0000000 --- a/demo/NGINX_INTRANET_TUNNEL.md +++ /dev/null @@ -1,279 +0,0 @@ -# 🔗 Nginx 内网穿透配置指南 - -## 📋 概述 - -使用 Nginx 反向代理后,**只需要穿透一个端口:80端口** - -## 🎯 需要穿透的端口 - -### ✅ 必须穿透的端口 - -**端口 80** - Nginx 反向代理服务 -- 这是唯一需要穿透的端口 -- 用户通过此端口访问整个应用(前端 + API) -- Nginx 会自动将 `/api/` 请求代理到后端服务 - -### ❌ 不需要穿透的端口 - -- **8080** - 后端服务端口 - - 原因:通过 Nginx 内部代理访问,不需要对外暴露 - - 即使暴露,也建议关闭以提高安全性 - -- **3306** - MySQL 数据库端口 - - 原因:仅在 Docker 网络内部使用 - - 安全建议:永远不要对外暴露数据库端口 - ---- - -## 🔧 内网穿透工具配置 - -### 方式一:使用 ngrok(推荐) - -#### 1. 安装 ngrok -```bash -# 下载 ngrok -# https://ngrok.com/download - -# Windows: 下载 exe 文件 -# Linux/Mac: -wget https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-stable-linux-amd64.tgz -tar -xzf ngrok-v3-stable-linux-amd64.tgz -``` - -#### 2. 启动 ngrok 穿透 80 端口 -```bash -ngrok http 80 -``` - -#### 3. 获取穿透地址 -ngrok 会输出类似: -``` -Forwarding https://xxxxx.ngrok-free.app -> http://localhost:80 -``` - -#### 4. 配置 Nginx(如果需要自定义域名) - -修改 `nginx/nginx.conf`: -```nginx -server { - listen 80; - server_name xxxxx.ngrok-free.app; # ngrok 分配的域名 - # ... 其他配置 -} -``` - ---- - -### 方式二:使用 frp(Fast Reverse Proxy) - -#### 1. 服务器端配置(frps.ini) -```ini -[common] -bind_port = 7000 - -# 如果使用自定义域名 -subdomain_host = yourdomain.com -``` - -#### 2. 客户端配置(frpc.ini) -```ini -[common] -server_addr = your-server-ip -server_port = 7000 - -[web] -type = http -local_ip = 127.0.0.1 -local_port = 80 -custom_domains = your-domain.com -# 或者使用子域名 -# subdomain = aigc -``` - -#### 3. 启动 frp 客户端 -```bash -frpc -c frpc.ini -``` - ---- - -### 方式三:使用 NPS(Nginx Proxy Server) - -#### 1. 服务器端配置 -```json -{ - "tcp": [ - { - "port": 80, - "target": "your-local-ip:80" - } - ] -} -``` - -#### 2. 客户端连接服务器 -```bash -npc -server=server-ip:port -vkey=your-key -``` - ---- - -## 🔐 安全建议 - -### 1. 只暴露必要的端口 -```yaml -# docker-compose.yml -# ✅ 保留(需要穿透) -nginx: - ports: - - "80:80" - -# ❌ 建议移除(提高安全性) -backend: - # ports: - # - "8080:8080" # 注释掉,不对外暴露 - -mysql: - # ports: - # - "3306:3306" # 注释掉,不对外暴露 -``` - -### 2. 配置 HTTPS(推荐) - -#### 使用 ngrok(自动HTTPS) -```bash -# ngrok 自动提供 HTTPS -ngrok http 80 -``` - -#### 使用 Nginx + Let's Encrypt -```nginx -server { - listen 443 ssl; - server_name your-domain.com; - - ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem; - ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem; - # ... 其他配置 -} -``` - ---- - -## 📝 配置示例 - -### 完整的 docker-compose.yml(优化版 - 只暴露80端口) - -```yaml -services: - mysql: - image: mysql:8.0 - # 移除 ports,不对外暴露 - # ports: - # - "3306:3306" - networks: - - app-network - - backend: - build: - context: . - dockerfile: Dockerfile.backend - # 移除 ports,通过 Nginx 内部访问 - # ports: - # - "8080:8080" - networks: - - app-network - - nginx: - build: - context: ./nginx - dockerfile: Dockerfile - ports: - - "80:80" # ✅ 唯一需要穿透的端口 - networks: - - app-network -``` - ---- - -## 🧪 测试内网穿透 - -### 1. 启动服务 -```bash -docker-compose up -d -``` - -### 2. 启动内网穿透工具 -```bash -# 使用 ngrok -ngrok http 80 - -# 或使用 frp -frpc -c frpc.ini -``` - -### 3. 访问测试 -```bash -# 使用穿透地址访问 -curl https://xxxxx.ngrok-free.app/health - -# 测试 API -curl https://xxxxx.ngrok-free.app/api/health -``` - ---- - -## 📊 端口使用总结 - -| 服务 | 端口 | 是否需要穿透 | 说明 | -|------|------|-------------|------| -| Nginx | 80 | ✅ **是** | 唯一需要穿透的端口 | -| Backend | 8080 | ❌ 否 | 通过 Nginx 内部访问 | -| MySQL | 3306 | ❌ 否 | 仅在 Docker 网络内访问 | - ---- - -## 🚀 快速开始 - -### 使用 ngrok(最简单) - -```bash -# 1. 启动所有服务 -docker-compose up -d - -# 2. 启动 ngrok -ngrok http 80 - -# 3. 复制 ngrok 提供的 HTTPS 地址 -# 例如: https://xxxxx.ngrok-free.app - -# 4. 在浏览器中访问该地址 -``` - ---- - -## 💡 常见问题 - -### Q: 为什么不需要穿透 8080 端口? -A: 因为 Nginx 已经配置了反向代理,所有 `/api/` 请求都会自动转发到后端服务,用户只需要访问 Nginx 的 80 端口即可。 - -### Q: 如果需要直接访问后端 API 怎么办? -A: 如果确实需要直接访问,可以在 docker-compose.yml 中保留 8080 端口的映射,但不推荐。 - -### Q: ngrok 的地址会变吗? -A: 免费版 ngrok 每次启动地址都会变化。可以: -- 使用付费版获得固定域名 -- 使用其他工具如 frp 配置自定义域名 - ---- - -## 📚 相关文档 - -- [ngrok 官方文档](https://ngrok.com/docs) -- [frp 官方文档](https://gofrp.org/docs/) -- [Nginx 反向代理指南](./NGINX_REVERSE_PROXY_GUIDE.md) - ---- - -**总结:只需要穿透 80 端口即可!** ✅ - diff --git a/demo/NGINX_REVERSE_PROXY_GUIDE.md b/demo/NGINX_REVERSE_PROXY_GUIDE.md deleted file mode 100644 index 0f077a3..0000000 --- a/demo/NGINX_REVERSE_PROXY_GUIDE.md +++ /dev/null @@ -1,290 +0,0 @@ -# Nginx 反向代理配置指南 - -## 📋 概述 - -本项目已配置使用 Nginx 作为反向代理服务器,实现以下功能: -- 前端静态文件服务(Vue.js 构建产物) -- API 请求代理到后端 Spring Boot 服务 -- 负载均衡和健康检查 -- Gzip 压缩优化 -- WebSocket 支持 - -## 🏗️ 架构 - -``` -用户请求 - ↓ -Nginx (端口 80) - ├─ / → 前端静态文件 (dist/) - └─ /api/ → 代理到后端 (backend:8080) -``` - -## 📁 文件结构 - -``` -demo/ -├── nginx/ -│ ├── nginx.conf # Nginx 主配置文件 -│ ├── Dockerfile # Nginx 容器镜像 -│ └── docker-compose.yml # 独立 Nginx 部署(可选) -├── docker-compose.yml # 完整的服务编排(包含 Nginx) -└── Dockerfile.backend # 后端服务镜像 -``` - -## 🚀 快速开始 - -### 方式一:使用 Docker Compose(推荐) - -```bash -# 1. 构建前端 -cd frontend -npm install -npm run build -cd .. - -# 2. 启动所有服务(包括 Nginx) -docker-compose up -d - -# 3. 访问应用 -# 前端: http://localhost -# 后端API: http://localhost/api -``` - -### 方式二:独立部署 Nginx - -```bash -# 1. 构建前端 -cd frontend -npm install -npm run build -cd .. - -# 2. 启动后端服务 -java -jar target/demo-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod - -# 3. 启动 Nginx(在 nginx 目录下) -cd nginx -docker-compose up -d -``` - -## ⚙️ Nginx 配置详解 - -### 主要配置项 - -#### 1. 上游服务器配置 -```nginx -upstream backend { - server backend:8080; # 后端服务地址(Docker 服务名) - keepalive 32; -} -``` - -#### 2. 前端静态文件服务 -```nginx -location / { - try_files $uri $uri/ /index.html; # SPA 路由支持 -} -``` - -#### 3. API 代理配置 -```nginx -location /api/ { - proxy_pass http://backend; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; -} -``` - -### 功能特性 - -#### ✅ 静态资源缓存 -- 图片、CSS、JS 等静态资源缓存 30 天 -- 提升页面加载速度 - -#### ✅ Gzip 压缩 -- 自动压缩文本文件(HTML、CSS、JS、JSON) -- 减少传输数据量 - -#### ✅ WebSocket 支持 -- 支持 WebSocket 连接(`/ws/` 路径) -- 自动处理升级协议 - -#### ✅ 健康检查 -- `/health` 端点用于健康检查 -- 便于监控和负载均衡 - -#### ✅ CORS 处理 -- 自动处理跨域请求 -- 支持预检请求(OPTIONS) - -## 🔧 配置修改 - -### 修改端口 - -编辑 `docker-compose.yml`: -```yaml -nginx: - ports: - - "8080:80" # 外部端口:容器端口 -``` - -### 修改后端地址 - -编辑 `nginx/nginx.conf`: -```nginx -upstream backend { - server your-backend-host:8080; # 修改为实际后端地址 -} -``` - -### 添加 SSL/HTTPS - -1. 将 SSL 证书放在 `nginx/ssl/` 目录 -2. 修改 `nginx.conf` 添加 HTTPS 配置: -```nginx -server { - listen 443 ssl; - ssl_certificate /etc/nginx/ssl/cert.pem; - ssl_certificate_key /etc/nginx/ssl/key.pem; - # ... 其他配置 -} -``` - -## 📝 环境变量配置 - -### 生产环境变量 - -创建 `.env` 文件或设置环境变量: -```bash -# 数据库配置 -MYSQL_ROOT_PASSWORD=your_password -MYSQL_DATABASE=aigc_platform - -# Spring Boot 配置 -SPRING_PROFILES_ACTIVE=prod -SPRING_DATASOURCE_URL=jdbc:mysql://mysql:3306/aigc_platform -``` - -## 🔍 故障排查 - -### 检查 Nginx 日志 -```bash -# 查看 Nginx 容器日志 -docker logs demo-nginx - -# 查看错误日志 -docker exec demo-nginx cat /var/log/nginx/error.log - -# 查看访问日志 -docker exec demo-nginx cat /var/log/nginx/access.log -``` - -### 测试配置 -```bash -# 检查 Nginx 配置语法 -docker exec demo-nginx nginx -t - -# 重新加载配置(不中断服务) -docker exec demo-nginx nginx -s reload -``` - -### 常见问题 - -#### 1. 502 Bad Gateway -- **原因**:后端服务未启动或无法连接 -- **解决**:检查后端服务状态 `docker ps` - -#### 2. 404 Not Found(前端路由) -- **原因**:缺少 `try_files` 配置 -- **解决**:确保配置了 `try_files $uri $uri/ /index.html;` - -#### 3. CORS 错误 -- **原因**:代理头设置不正确 -- **解决**:检查 `proxy_set_header` 配置 - -## 🧪 测试 - -### 测试前端访问 -```bash -curl http://localhost/ -``` - -### 测试 API 代理 -```bash -curl http://localhost/api/health -``` - -### 测试健康检查 -```bash -curl http://localhost/health -``` - -## 📊 性能优化 - -### 1. 启用 HTTP/2 -```nginx -listen 443 ssl http2; -``` - -### 2. 增加缓存 -```nginx -proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=api_cache:10m; -location /api/ { - proxy_cache api_cache; - proxy_cache_valid 200 5m; -} -``` - -### 3. 限制请求速率 -```nginx -limit_req_zone $binary_remote_addr zone=api_limit:10m rate=10r/s; -location /api/ { - limit_req zone=api_limit burst=20; -} -``` - -## 🔐 安全建议 - -1. **隐藏 Nginx 版本** -```nginx -server_tokens off; -``` - -2. **限制请求大小** -```nginx -client_max_body_size 100M; -``` - -3. **使用 HTTPS** -- 配置 SSL 证书 -- 启用 HSTS - -4. **IP 白名单**(如需要) -```nginx -location /admin/ { - allow 192.168.1.0/24; - deny all; -} -``` - -## 📚 相关文档 - -- [Nginx 官方文档](https://nginx.org/en/docs/) -- [Docker Compose 文档](https://docs.docker.com/compose/) -- [Vue.js 部署指南](https://router.vuejs.org/guide/essentials/history-mode.html) - -## 🎯 下一步 - -1. ✅ 配置已完成 -2. 构建前端:`cd frontend && npm run build` -3. 启动服务:`docker-compose up -d` -4. 访问应用:`http://localhost` - ---- - -**注意**:首次部署前请确保: -- 前端已构建(`frontend/dist` 目录存在) -- 数据库已初始化 -- 环境变量已配置 - diff --git a/demo/NGROK_CONFIGURATION.md b/demo/NGROK_CONFIGURATION.md deleted file mode 100644 index 2a7322d..0000000 --- a/demo/NGROK_CONFIGURATION.md +++ /dev/null @@ -1,184 +0,0 @@ -# 🔗 Ngrok 内网穿透配置完成 - -## ✅ 已配置的穿透地址 - -**Ngrok 穿透 URL**: `https://curtly-aphorismatic-ginger.ngrok-free.dev` - -## 📋 配置更新总结 - -### 1. Nginx 配置 ✅ -- ✅ 已添加 `server_name` 支持 ngrok 域名 -- ✅ CORS 配置已优化,支持动态来源 -- ✅ 已配置反向代理,所有 `/api/` 请求自动转发到后端 - -**文件**: `nginx/nginx.conf` -```nginx -server_name localhost curtly-aphorismatic-ginger.ngrok-free.dev; -``` - -### 2. 前端 API 配置 ✅ -- ✅ API 请求自动检测当前域名 -- ✅ 通过 ngrok 访问时使用相对路径 `/api`(自动适配当前域名) -- ✅ 本地开发时仍使用 `http://localhost:8080/api` - -**文件**: `frontend/src/api/request.js` - -### 3. 支付宝回调配置 ✅ -- ✅ 通知地址:`https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/notify` -- ✅ 返回地址:`https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/return` - -**文件**: `src/main/resources/application-dev.properties` - -### 4. 后端 CORS 配置 ✅ -- ✅ 已配置支持 `*.ngrok-free.app` 域名模式 -- ✅ 支持所有 ngrok 子域名 - -**文件**: `src/main/java/com/example/demo/config/SecurityConfig.java` - ---- - -## 🚀 使用方法 - -### 1. 启动服务 - -```bash -# 使用 Docker Compose(推荐) -docker-compose up -d - -# 或直接启动后端 -java -jar target/demo-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev -``` - -### 2. 启动 Ngrok - -```bash -# 穿透 Nginx 的 80 端口 -ngrok http 80 -``` - -**注意**: Ngrok 应该指向 **80 端口**(Nginx),而不是 8080(后端) - -### 3. 访问应用 - -通过 ngrok 地址访问: -- 🌐 **前端**: `https://curtly-aphorismatic-ginger.ngrok-free.dev` -- 🔗 **API**: `https://curtly-aphorismatic-ginger.ngrok-free.dev/api` -- 🏥 **健康检查**: `https://curtly-aphorismatic-ginger.ngrok-free.dev/health` - ---- - -## 🔧 配置说明 - -### 端口穿透 - -**只需要穿透 80 端口**(Nginx) -- ✅ Nginx 会处理所有前端请求 -- ✅ Nginx 会自动将 `/api/` 请求代理到后端(内部访问) -- ❌ 不需要穿透 8080 端口(后端) -- ❌ 不需要穿透 3306 端口(MySQL) - -### 请求流程 - -``` -外网用户 - ↓ -https://curtly-aphorismatic-ginger.ngrok-free.dev (Ngrok) - ↓ -localhost:80 (Nginx) - ├─ / → 前端静态文件 - └─ /api/ → proxy_pass → backend:8080 (内部 Docker 网络) -``` - ---- - -## 🧪 测试验证 - -### 1. 测试前端访问 -```bash -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/ -``` - -### 2. 测试 API 代理 -```bash -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/api/health -``` - -### 3. 测试健康检查 -```bash -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/health -``` - ---- - -## ⚠️ 注意事项 - -### 1. Ngrok 地址可能变化 -- 免费版 ngrok 每次重启地址会变化 -- 如果地址变化,需要更新: - 1. `nginx/nginx.conf` 中的 `server_name` - 2. `application-dev.properties` 中的 `alipay.notify-url` 和 `alipay.return-url` - -### 2. Ngrok 警告页面 -- 免费版 ngrok 会在浏览器显示警告页面 -- 可以点击 "Visit Site" 继续访问 -- 付费版可以移除警告 - -### 3. HTTPS 证书 -- Ngrok 自动提供 HTTPS 证书 -- 无需额外配置 SSL -- 确保使用 `https://` 协议访问 - ---- - -## 🔄 更新配置(如果 Ngrok 地址变化) - -如果 ngrok 地址变化为 `https://new-address.ngrok-free.dev`: - -### 1. 更新 Nginx 配置 -```nginx -server_name localhost new-address.ngrok-free.dev; -``` - -### 2. 更新支付宝回调地址 -```properties -alipay.notify-url=https://new-address.ngrok-free.dev/api/payments/alipay/notify -alipay.return-url=https://new-address.ngrok-free.dev/api/payments/alipay/return -``` - -### 3. 重新加载配置 -```bash -# Nginx 配置重新加载 -docker exec demo-nginx nginx -s reload - -# 或重启服务 -docker-compose restart nginx -``` - ---- - -## 📊 当前配置状态 - -| 配置项 | 状态 | 说明 | -|--------|------|------| -| Nginx server_name | ✅ | 已配置 ngrok 域名 | -| 前端 API 基础路径 | ✅ | 自动适配当前域名 | -| 支付宝回调地址 | ✅ | 已配置 ngrok URL | -| 后端 CORS | ✅ | 支持 ngrok 域名模式 | -| 端口穿透 | ✅ | 只需穿透 80 端口 | - ---- - -## 🎯 快速检查清单 - -- [x] ✅ Nginx 配置已更新 server_name -- [x] ✅ 前端 API 配置支持相对路径 -- [x] ✅ 支付宝回调地址已配置 -- [x] ✅ 后端 CORS 已支持 ngrok 域名 -- [ ] ⚠️ Ngrok 服务正在运行并指向 80 端口 -- [ ] ⚠️ 已测试前端访问 -- [ ] ⚠️ 已测试 API 代理 - ---- - -**配置完成!可以通过 `https://curtly-aphorismatic-ginger.ngrok-free.dev` 访问应用了!** 🎉 - diff --git a/demo/NGROK_DEPLOYMENT_GUIDE.md b/demo/NGROK_DEPLOYMENT_GUIDE.md deleted file mode 100644 index 655396d..0000000 --- a/demo/NGROK_DEPLOYMENT_GUIDE.md +++ /dev/null @@ -1,272 +0,0 @@ -# 🚀 Ngrok 内网穿透部署完整指南 - -## 📋 当前配置 - -**Ngrok 穿透地址**: `https://curtly-aphorismatic-ginger.ngrok-free.dev` -**穿透端口**: `80` (Nginx) - -## ✅ 已完成的配置 - -### 1. Nginx 反向代理配置 ✅ -- ✅ `server_name` 已配置支持 ngrok 域名 -- ✅ 前端静态文件服务 -- ✅ API 代理到后端(`/api/` → `backend:8080`) -- ✅ CORS 配置已优化 - -### 2. 前端 API 自动适配 ✅ -- ✅ 自动检测当前访问域名 -- ✅ 通过 ngrok 访问:使用相对路径 `/api` -- ✅ 本地开发:使用 `http://localhost:8080/api` - -### 3. 支付宝回调地址 ✅ -- ✅ 通知地址:`https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/notify` -- ✅ 返回地址:`https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/return` - -### 4. 后端 CORS 配置 ✅ -- ✅ 支持 `*.ngrok-free.app` 域名模式 -- ✅ 支持所有 ngrok 子域名 - ---- - -## 🚀 部署步骤 - -### 步骤 1: 构建前端 - -```bash -cd frontend -npm install -npm run build -cd .. -``` - -**重要**: 确保 `frontend/dist` 目录存在且包含构建产物。 - -### 步骤 2: 启动 Docker 服务 - -```bash -# 启动所有服务(MySQL、后端、Nginx) -docker-compose up -d --build - -# 查看服务状态 -docker-compose ps - -# 查看日志 -docker-compose logs -f -``` - -### 步骤 3: 启动 Ngrok(穿透 80 端口) - -```bash -# 确保指向 Nginx 的 80 端口 -ngrok http 80 -``` - -**关键提示**: -- ✅ 正确:`ngrok http 80`(Nginx 端口) -- ❌ 错误:`ngrok http 8080`(后端端口,不需要) - -### 步骤 4: 验证访问 - -访问 `https://curtly-aphorismatic-ginger.ngrok-free.dev` 测试: - -1. **前端页面**: 应能正常加载 -2. **API 请求**: 应能正常响应(通过 `/api/` 路径) -3. **健康检查**: `https://curtly-aphorismatic-ginger.ngrok-free.dev/health` - ---- - -## 🔍 验证清单 - -### ✅ 服务状态检查 - -```bash -# 检查容器状态 -docker-compose ps - -# 应该看到: -# - demo-mysql (running) -# - demo-backend (running) -# - demo-nginx (running) -``` - -### ✅ Nginx 配置验证 - -```bash -# 测试 Nginx 配置语法 -docker exec demo-nginx nginx -t - -# 应该输出: -# nginx: the configuration file /etc/nginx/nginx.conf syntax is ok -# nginx: configuration file /etc/nginx/nginx.conf test is successful -``` - -### ✅ 端口检查 - -```bash -# 检查 80 端口是否被 Nginx 监听 -netstat -an | findstr :80 - -# 或使用 PowerShell -Get-NetTCPConnection -LocalPort 80 -ErrorAction SilentlyContinue -``` - -### ✅ Ngrok 隧道检查 - -```bash -# 检查 ngrok 进程 -Get-Process -Name ngrok -ErrorAction SilentlyContinue - -# 访问 ngrok 控制面板 -# 浏览器打开: http://127.0.0.1:4040 -``` - ---- - -## 🧪 功能测试 - -### 1. 测试前端访问 - -```bash -# 在浏览器中访问 -https://curtly-aphorismatic-ginger.ngrok-free.dev - -# 或使用 curl -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/ -``` - -### 2. 测试 API 代理 - -```bash -# 测试 API 请求(应该通过 Nginx 代理到后端) -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/api/health - -# 测试登录 API -curl -X POST https://curtly-aphorismatic-ginger.ngrok-free.dev/api/auth/login \ - -H "Content-Type: application/json" \ - -d '{"username":"test","password":"test"}' -``` - -### 3. 测试健康检查 - -```bash -curl https://curtly-aphorismatic-ginger.ngrok-free.dev/health -``` - ---- - -## ⚠️ 常见问题 - -### 1. Ngrok 显示 "Tunnel not found" -**原因**: Ngrok 没有运行或端口错误 -**解决**: -```bash -# 检查 ngrok 是否运行 -Get-Process -Name ngrok - -# 确保穿透的是 80 端口 -ngrok http 80 -``` - -### 2. 502 Bad Gateway -**原因**: 后端服务未启动或无法连接 -**解决**: -```bash -# 检查后端服务状态 -docker-compose logs backend - -# 重启后端服务 -docker-compose restart backend -``` - -### 3. 前端页面显示但 API 请求失败 -**原因**: API 代理配置问题 -**解决**: -```bash -# 检查 Nginx 配置 -docker exec demo-nginx nginx -t - -# 检查 Nginx 日志 -docker-compose logs nginx - -# 确认前端使用的是相对路径 /api,而不是绝对路径 -``` - -### 4. CORS 错误 -**原因**: CORS 配置问题 -**解决**: -- 检查后端 CORS 配置是否包含 ngrok 域名模式 -- 检查 Nginx CORS 头设置 -- 确认请求使用正确的域名(ngrok 地址) - ---- - -## 📊 请求流程图 - -``` -外部用户 - ↓ -https://curtly-aphorismatic-ginger.ngrok-free.dev (Ngrok HTTPS) - ↓ -localhost:80 (Nginx - 唯一需要穿透的端口) - ├─ GET / → 返回前端静态文件 (frontend/dist/index.html) - ├─ GET /api/* → proxy_pass → backend:8080 (内部 Docker 网络) - └─ GET /health → 返回健康检查 -``` - ---- - -## 🔄 如果 Ngrok 地址变化 - -如果 ngrok 地址变为 `https://new-address.ngrok-free.dev`: - -### 1. 更新 Nginx 配置 -```bash -# 编辑 nginx/nginx.conf -# 修改 server_name 行: -server_name localhost new-address.ngrok-free.dev; -``` - -### 2. 更新支付宝回调地址 -```bash -# 编辑 src/main/resources/application-dev.properties -alipay.notify-url=https://new-address.ngrok-free.dev/api/payments/alipay/notify -alipay.return-url=https://new-address.ngrok-free.dev/api/payments/alipay/return -``` - -### 3. 重新加载配置 -```bash -# 重新加载 Nginx(不中断服务) -docker exec demo-nginx nginx -s reload - -# 或重启服务 -docker-compose restart nginx backend -``` - ---- - -## 📝 当前配置状态 - -| 组件 | 配置项 | 状态 | 值 | -|------|--------|------|-----| -| Nginx | server_name | ✅ | localhost, curtly-aphorismatic-ginger.ngrok-free.dev | -| Nginx | 监听端口 | ✅ | 80 | -| Nginx | API 代理 | ✅ | /api/ → backend:8080 | -| 前端 | API baseURL | ✅ | 自动检测(/api 或 http://localhost:8080/api) | -| 后端 | CORS origins | ✅ | *.ngrok-free.app | -| 支付宝 | notify-url | ✅ | https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/notify | -| 支付宝 | return-url | ✅ | https://curtly-aphorismatic-ginger.ngrok-free.dev/api/payments/alipay/return | -| Ngrok | 穿透端口 | ✅ | 80 (Nginx) | - ---- - -## 🎯 下一步操作 - -1. ✅ **构建前端**: `cd frontend && npm run build` -2. ✅ **启动服务**: `docker-compose up -d --build` -3. ✅ **启动 Ngrok**: `ngrok http 80` -4. ✅ **测试访问**: 浏览器打开 `https://curtly-aphorismatic-ginger.ngrok-free.dev` - ---- - -**配置已完成!所有服务已准备好通过 ngrok 访问!** 🎉 - diff --git a/demo/PAYMENT_CONFIGURATION_CHECKLIST.md b/demo/PAYMENT_CONFIGURATION_CHECKLIST.md deleted file mode 100644 index 36c028b..0000000 --- a/demo/PAYMENT_CONFIGURATION_CHECKLIST.md +++ /dev/null @@ -1,259 +0,0 @@ -# 支付功能模块配置清单 - -## 一、已配置项 ✅ - -### 1. 支付宝基础配置(开发环境) -- ✅ `alipay.app-id` - 应用ID -- ✅ `alipay.private-key` - 应用私钥 -- ✅ `alipay.public-key` - 支付宝公钥 -- ✅ `alipay.gateway-url` - 网关地址(沙箱) -- ✅ `alipay.charset` - 字符集(UTF-8) -- ✅ `alipay.sign-type` - 签名方式(RSA2) -- ✅ `alipay.notify-url` - 异步通知地址(当前使用ngrok) -- ✅ `alipay.return-url` - 同步返回地址(当前使用ngrok) - -### 2. 后端代码实现 -- ✅ 支付宝服务(AlipayService) -- ✅ 支付API控制器(PaymentApiController) -- ✅ 支付服务(PaymentService) -- ✅ 支付数据模型(Payment, PaymentStatus, PaymentMethod) - -### 3. 前端代码实现 -- ✅ 支付API封装(payments.js) -- ✅ 支付模态框组件(PaymentModal.vue) -- ✅ 订阅页面(Subscription.vue) - ---- - -## 二、需要检查/更新项 ⚠️ - -### 1. 支付宝回调地址配置 - -**当前状态:** -- 开发环境使用 ngrok 地址:`https://curtly-aphorismatic-ginger.ngrok-free.dev` - -**需要操作:** -- [ ] **如果 ngrok 地址已过期**,需要: - 1. 重新运行 `ngrok http 8080` 获取新地址 - 2. 更新 `application-dev.properties` 中的 `alipay.notify-url` 和 `alipay.return-url` - 3. 在支付宝开放平台配置新的回调地址 - -- [ ] **如果部署到生产环境**,需要: - 1. 使用正式域名替换 ngrok 地址 - 2. 确保回调地址是 HTTPS(支付宝要求) - 3. 在支付宝开放平台配置生产环境的回调地址 - -**配置文件位置:** -``` -demo/src/main/resources/application-dev.properties (开发环境) -demo/src/main/resources/application-prod.properties (生产环境) -``` - ---- - -### 2. 支付宝开放平台配置 - -**需要在支付宝开放平台配置:** - -- [ ] **应用回调地址** - - 登录支付宝开放平台:https://open.alipay.com - - 进入"我的应用" → 选择应用 - - 配置"应用网关"和"回调地址" - - 添加 `notify-url` 和 `return-url` - -- [ ] **公钥配置** - - 确认应用公钥已上传到支付宝平台 - - 确认支付宝公钥已配置在 `alipay.public-key` - -- [ ] **沙箱测试账号** - - 获取沙箱买家账号和密码 - - 用于测试支付流程 - ---- - -### 3. 生产环境配置(如需上线) - -**需要配置环境变量或更新配置文件:** - -```properties -# 生产环境支付宝配置 -alipay.app-id=${ALIPAY_APP_ID} # 需要在环境变量中配置 -alipay.private-key=${ALIPAY_PRIVATE_KEY} # 需要在环境变量中配置 -alipay.public-key=${ALIPAY_PUBLIC_KEY} # 需要在环境变量中配置 -alipay.gateway-url=https://openapi.alipay.com/gateway.do -alipay.notify-url=${ALIPAY_NOTIFY_URL} # 需要配置正式域名 -alipay.return-url=${ALIPAY_RETURN_URL} # 需要配置正式域名 -``` - -**操作步骤:** -1. [ ] 在服务器环境变量中设置上述变量 -2. [ ] 或创建 `application-prod.properties` 并填写实际值 -3. [ ] 确保使用正式环境的 APPID 和密钥(不是沙箱) -4. [ ] 确保回调地址使用 HTTPS 协议 - ---- - -### 4. PayPal 配置(如果使用) - -**当前状态:** PayPal 配置存在但可能需要更新 - -**需要配置项:** - -```properties -# PayPal配置(在 application-dev.properties 或 application-prod.properties) -paypal.client-id=你的PayPal客户端ID -paypal.client-secret=你的PayPal客户端密钥 -paypal.mode=sandbox # 或 live(生产环境) -paypal.return-url=http://yourdomain.com/api/payments/paypal/return -paypal.cancel-url=http://yourdomain.com/api/payments/paypal/cancel -``` - -**操作步骤:** -1. [ ] 如果使用 PayPal,需要: - - 在 PayPal 开发者控制台创建应用 - - 获取 Client ID 和 Client Secret - - 配置回调地址 - ---- - -### 5. 数据库表检查 - -**需要确认以下表已创建:** - -- [ ] `payments` 表 -- [ ] `orders` 表(支付成功后创建订单) -- [ ] 相关外键和索引 - -**检查方法:** -```sql -SHOW TABLES LIKE 'payments'; -SHOW TABLES LIKE 'orders'; -``` - ---- - -### 6. 网络安全配置 - -**回调地址安全要求:** - -- [ ] **开发环境:** - - 确保 ngrok 服务运行 - - 回调地址必须是公网可访问的 HTTPS - -- [ ] **生产环境:** - - 配置 SSL 证书 - - 确保回调地址使用 HTTPS - - 配置防火墙规则,允许支付宝服务器访问回调接口 - ---- - -### 7. 支付测试配置 - -**测试前需要确认:** - -- [ ] 支付宝沙箱账号已配置 -- [ ] 沙箱买家账号可用于测试支付 -- [ ] 回调地址在支付宝平台已配置 -- [ ] 本地或服务器可以接收到支付宝回调 - -**测试步骤:** -1. [ ] 创建测试支付订单 -2. [ ] 使用沙箱账号扫码支付 -3. [ ] 验证异步通知是否接收 -4. [ ] 验证支付状态是否正确更新 - ---- - -## 三、配置优先级 - -### 🔴 紧急(必须配置) -1. **支付宝回调地址** - 如果 ngrok 地址已过期,需要立即更新 -2. **支付宝开放平台回调配置** - 必须配置才能接收支付通知 - -### 🟡 重要(建议配置) -3. **生产环境配置** - 如需上线必须配置 -4. **数据库表检查** - 确保表结构完整 - -### 🟢 可选(按需配置) -5. **PayPal 配置** - 如果使用 PayPal 支付 -6. **支付测试环境** - 用于测试支付功能 - ---- - -## 四、快速检查命令 - -### 检查配置文件是否存在 -```bash -# Windows PowerShell -Test-Path demo/src/main/resources/application-dev.properties -Test-Path demo/src/main/resources/application-prod.properties -``` - -### 检查支付宝配置是否完整 -查看配置文件中的以下项是否都已填写: -- `alipay.app-id` -- `alipay.private-key` -- `alipay.public-key` -- `alipay.gateway-url` -- `alipay.notify-url` -- `alipay.return-url` - -### 测试回调地址可访问性 -```bash -# 测试 notify-url 是否可访问 -curl -X POST https://your-notify-url/api/payments/alipay/notify - -# 测试 return-url 是否可访问 -curl https://your-return-url/api/payments/alipay/return -``` - ---- - -## 五、常见问题 - -### Q1: ngrok 地址已过期怎么办? -**A:** -1. 重新运行 `ngrok http 8080` -2. 获取新的 HTTPS 地址 -3. 更新 `application-dev.properties` 中的回调地址 -4. 在支付宝开放平台更新回调地址配置 - -### Q2: 生产环境如何配置回调地址? -**A:** -1. 使用正式域名(必须是 HTTPS) -2. 在支付宝开放平台配置生产环境回调地址 -3. 确保服务器防火墙允许支付宝 IP 访问 - -### Q3: 如何验证配置是否正确? -**A:** -1. 创建测试支付订单 -2. 使用沙箱账号支付 -3. 检查日志是否收到支付宝回调 -4. 验证支付状态是否正确更新 - ---- - -## 六、下一步操作建议 - -根据当前配置状态,建议按以下顺序操作: - -1. ✅ **检查 ngrok 地址是否有效** - - 如果无效,更新回调地址配置 - -2. ✅ **验证支付宝开放平台配置** - - 确认回调地址已在平台配置 - - 确认公钥配置正确 - -3. ✅ **测试支付流程** - - 创建测试订单 - - 完成支付测试 - - 验证回调接收 - -4. ✅ **准备生产环境配置** - - 配置生产环境变量 - - 申请正式支付宝应用(如需) - ---- - -**最后更新:** 请根据实际部署环境调整上述配置项。 - diff --git a/demo/POINTS_FREEZE_SYSTEM_README.md b/demo/POINTS_FREEZE_SYSTEM_README.md deleted file mode 100644 index dddc497..0000000 --- a/demo/POINTS_FREEZE_SYSTEM_README.md +++ /dev/null @@ -1,304 +0,0 @@ -# 积分冻结系统 - -## 概述 - -积分冻结系统实现了任务提交时冻结积分、任务完成时扣除、任务失败时返还的完整积分管理流程。 - -## 系统特性 - -### 🔒 **积分状态管理** -- **正常积分**: 用户可以自由使用的积分 -- **冻结积分**: 任务提交时临时冻结的积分,不可使用 -- **可用积分**: 正常积分 - 冻结积分 - -### 📋 **冻结记录管理** -- 完整的积分冻结记录追踪 -- 支持多种冻结状态:已冻结、已扣除、已返还、已过期 -- 自动处理过期冻结记录(24小时) - -### ⚡ **自动积分处理** -- **任务提交**: 自动冻结相应积分 -- **任务完成**: 自动扣除冻结积分 -- **任务失败**: 自动返还冻结积分 -- **任务取消**: 自动返还冻结积分 -- **任务超时**: 自动返还冻结积分 - -## 数据库结构 - -### 用户表修改 -```sql --- 添加冻结积分字段 -ALTER TABLE users ADD COLUMN frozen_points INT NOT NULL DEFAULT 0 COMMENT '冻结积分'; -``` - -### 积分冻结记录表 -```sql -CREATE TABLE points_freeze_records ( - id BIGINT AUTO_INCREMENT PRIMARY KEY, - username VARCHAR(100) NOT NULL COMMENT '用户名', - task_id VARCHAR(50) NOT NULL UNIQUE COMMENT '任务ID', - task_type ENUM('TEXT_TO_VIDEO', 'IMAGE_TO_VIDEO') NOT NULL COMMENT '任务类型', - freeze_points INT NOT NULL COMMENT '冻结的积分数量', - status ENUM('FROZEN', 'DEDUCTED', 'RETURNED', 'EXPIRED') NOT NULL DEFAULT 'FROZEN' COMMENT '冻结状态', - freeze_reason VARCHAR(200) COMMENT '冻结原因', - created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - completed_at DATETIME COMMENT '完成时间' -); -``` - -## API接口 - -### 获取积分信息 -``` -GET /api/points/info -Authorization: Bearer - -Response: -{ - "success": true, - "data": { - "totalPoints": 1000, - "frozenPoints": 80, - "availablePoints": 920 - } -} -``` - -### 获取冻结记录 -``` -GET /api/points/freeze-records -Authorization: Bearer - -Response: -{ - "success": true, - "data": [ - { - "id": 1, - "username": "user1", - "taskId": "txt2vid_123", - "taskType": "TEXT_TO_VIDEO", - "freezePoints": 80, - "status": "FROZEN", - "freezeReason": "任务提交冻结积分 - 文生视频", - "createdAt": "2024-01-01T10:00:00", - "updatedAt": "2024-01-01T10:00:00" - } - ] -} -``` - -### 处理过期记录(管理员) -``` -POST /api/points/process-expired -Authorization: Bearer - -Response: -{ - "success": true, - "message": "处理过期记录完成", - "processedCount": 5 -} -``` - -## 服务方法 - -### UserService 积分冻结方法 - -#### 冻结积分 -```java -PointsFreezeRecord freezePoints(String username, String taskId, - PointsFreezeRecord.TaskType taskType, Integer points, String reason) -``` - -#### 扣除冻结积分(任务完成) -```java -void deductFrozenPoints(String taskId) -``` - -#### 返还冻结积分(任务失败) -```java -void returnFrozenPoints(String taskId) -``` - -#### 获取可用积分 -```java -Integer getAvailablePoints(String username) -``` - -#### 获取冻结积分 -```java -Integer getFrozenPoints(String username) -``` - -#### 获取冻结记录 -```java -List getPointsFreezeRecords(String username) -``` - -#### 处理过期记录 -```java -int processExpiredFrozenRecords() -``` - -## 积分计算规则 - -### 默认积分消耗 -- **文生视频**: 80积分 -- **图生视频**: 90积分 - -### 积分检查逻辑 -1. 检查用户可用积分是否足够 -2. 冻结相应积分 -3. 创建冻结记录 -4. 添加到任务队列 - -## 定时任务 - -### 过期记录处理 -- **频率**: 每小时执行一次 -- **功能**: 自动处理超过24小时的冻结记录 -- **处理方式**: 返还冻结积分,更新记录状态为"已过期" - -## 工作流程 - -### 1. 任务提交流程 -``` -用户提交任务 → 检查可用积分 → 冻结积分 → 创建冻结记录 → 添加到队列 -``` - -### 2. 任务完成流程 -``` -任务完成 → 扣除冻结积分 → 更新冻结记录状态 → 更新原始任务状态 -``` - -### 3. 任务失败流程 -``` -任务失败 → 返还冻结积分 → 更新冻结记录状态 → 更新原始任务状态 -``` - -### 4. 任务取消流程 -``` -用户取消任务 → 返还冻结积分 → 更新冻结记录状态 → 更新原始任务状态 -``` - -## 异常处理 - -### 积分不足 -- 检查可用积分时如果不足,抛出异常 -- 异常信息包含当前可用积分和所需积分 - -### 冻结记录不存在 -- 扣除或返还积分时如果记录不存在,抛出异常 -- 确保数据一致性 - -### 状态不正确 -- 操作冻结记录时检查状态是否正确 -- 防止重复操作 - -## 监控和日志 - -### 关键日志 -- 积分冻结成功/失败 -- 积分扣除成功/失败 -- 积分返还成功/失败 -- 过期记录处理 - -### 监控指标 -- 冻结积分总量 -- 过期记录数量 -- 积分操作成功率 - -## 安全考虑 - -### 数据一致性 -- 使用事务确保积分和记录状态一致 -- 防止并发操作导致的数据不一致 - -### 权限控制 -- 只有任务所有者可以操作相关积分 -- 管理员可以处理过期记录 - -### 异常恢复 -- 完善的异常处理机制 -- 自动重试和恢复机制 - -## 扩展功能 - -### 未来可扩展的功能 -1. **动态积分计算**: 根据任务参数动态计算所需积分 -2. **积分优惠**: 会员等级影响积分消耗 -3. **积分返还策略**: 不同失败原因的不同返还策略 -4. **积分统计**: 详细的积分使用统计和分析 -5. **积分预警**: 积分不足时的预警机制 - -## 使用示例 - -### 前端集成示例 -```javascript -// 获取用户积分信息 -const getPointsInfo = async () => { - const response = await fetch('/api/points/info', { - headers: { - 'Authorization': `Bearer ${token}` - } - }); - const data = await response.json(); - return data.data; -}; - -// 获取冻结记录 -const getFreezeRecords = async () => { - const response = await fetch('/api/points/freeze-records', { - headers: { - 'Authorization': `Bearer ${token}` - } - }); - const data = await response.json(); - return data.data; -}; -``` - -### 后端集成示例 -```java -// 在任务创建时自动冻结积分 -@Transactional -public TaskQueue addTextToVideoTask(String username, String taskId) { - // 计算所需积分 - Integer requiredPoints = calculateRequiredPoints(TaskQueue.TaskType.TEXT_TO_VIDEO); - - // 冻结积分 - userService.freezePoints(username, taskId, - PointsFreezeRecord.TaskType.TEXT_TO_VIDEO, requiredPoints, - "任务提交冻结积分 - 文生视频"); - - // 添加到队列 - return addTaskToQueue(username, taskId, TaskQueue.TaskType.TEXT_TO_VIDEO); -} -``` - -## 注意事项 - -1. **积分检查**: 在冻结积分前必须检查可用积分是否足够 -2. **状态管理**: 确保冻结记录状态与任务状态保持一致 -3. **异常处理**: 完善的异常处理确保积分不会丢失 -4. **定时清理**: 定期清理过期的冻结记录 -5. **监控告警**: 监控积分冻结系统的运行状态 - - - - - - - - - - - - - - - - - diff --git a/demo/POLLING_QUERY_IMPLEMENTATION.md b/demo/POLLING_QUERY_IMPLEMENTATION.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/POLLING_QUERY_IMPLEMENTATION.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/POLLING_SCHEDULE_SUMMARY.md b/demo/POLLING_SCHEDULE_SUMMARY.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/POLLING_SCHEDULE_SUMMARY.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/PasswordChecker.java b/demo/PasswordChecker.java index d2a95f5..9e584c5 100644 --- a/demo/PasswordChecker.java +++ b/demo/PasswordChecker.java @@ -42,6 +42,10 @@ public class PasswordChecker { + + + + diff --git a/demo/QUICK_DEPLOY.md b/demo/QUICK_DEPLOY.md deleted file mode 100644 index d82d437..0000000 --- a/demo/QUICK_DEPLOY.md +++ /dev/null @@ -1,126 +0,0 @@ -# 🚀 快速部署指南 - -本文档提供最精简的上线步骤,适合有经验的运维人员。 - -## 一、服务器准备(5分钟) - -```bash -# 1. 安装Java 21 -sudo apt update && sudo apt install -y openjdk-21-jdk - -# 2. 安装MySQL 8.0 -sudo apt install -y mysql-server -sudo mysql_secure_installation - -# 3. 安装FFmpeg -sudo apt install -y ffmpeg - -# 4. 安装Nginx -sudo apt install -y nginx -``` - -## 二、数据库设置(2分钟) - -```sql -CREATE DATABASE aigc_platform CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -CREATE USER 'aigc_user'@'localhost' IDENTIFIED BY '强密码'; -GRANT ALL PRIVILEGES ON aigc_platform.* TO 'aigc_user'@'localhost'; -FLUSH PRIVILEGES; -``` - -## 三、环境变量(3分钟) - -创建 `/app/aigc-platform/config/.env`: - -```bash -export DB_URL="jdbc:mysql://localhost:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai" -export DB_USERNAME="aigc_user" -export DB_PASSWORD="数据库密码" -export JWT_SECRET="$(openssl rand -base64 64)" -export AI_API_KEY="你的API密钥" -export AI_IMAGE_API_KEY="你的API密钥" -export FFMPEG_PATH="/usr/bin/ffmpeg" -export TEMP_DIR="/app/aigc-platform/temp" -export UPLOAD_PATH="/app/aigc-platform/uploads" -``` - -## 四、部署应用(5分钟) - -```bash -# 1. 创建目录 -sudo mkdir -p /app/aigc-platform/{logs,uploads,temp,config} -sudo chown -R $USER:$USER /app/aigc-platform - -# 2. 上传JAR文件 -scp target/demo-0.0.1-SNAPSHOT.jar user@server:/app/aigc-platform/ - -# 3. 创建systemd服务 -sudo nano /etc/systemd/system/aigc-platform.service -``` - -systemd服务内容: -```ini -[Unit] -Description=AIGC Platform -After=network.target mysql.service - -[Service] -Type=simple -User=your-user -WorkingDirectory=/app/aigc-platform -EnvironmentFile=/app/aigc-platform/config/.env -ExecStart=/usr/bin/java -jar -Xms1g -Xmx4g \ - -Dspring.profiles.active=prod \ - /app/aigc-platform/demo-0.0.1-SNAPSHOT.jar -Restart=always - -[Install] -WantedBy=multi-user.target -``` - -```bash -# 4. 启动服务 -sudo systemctl daemon-reload -sudo systemctl enable aigc-platform -sudo systemctl start aigc-platform -``` - -## 五、Nginx配置(3分钟) - -```nginx -server { - listen 80; - server_name yourdomain.com; - - location /api/ { - proxy_pass http://localhost:8080; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - } - - location / { - root /path/to/frontend/dist; - try_files $uri $uri/ /index.html; - } -} -``` - -## 六、SSL证书(2分钟) - -```bash -sudo apt install certbot python3-certbot-nginx -sudo certbot --nginx -d yourdomain.com -``` - -## ✅ 检查清单 - -- [ ] 应用启动成功:`sudo systemctl status aigc-platform` -- [ ] 数据库连接正常:查看日志 -- [ ] API可访问:`curl http://localhost:8080/api/health` -- [ ] 前端可访问:浏览器打开域名 -- [ ] SSL证书有效:`https://yourdomain.com` - -**总耗时:约20分钟** - -详细配置请参考 `DEPLOYMENT_CHECKLIST.md` - diff --git a/demo/README_NGINX.md b/demo/README_NGINX.md deleted file mode 100644 index 28638f6..0000000 --- a/demo/README_NGINX.md +++ /dev/null @@ -1,62 +0,0 @@ -# 🚀 Nginx 反向代理快速启动指南 - -## 快速部署 - -### Windows (PowerShell) -```powershell -.\deploy.ps1 -``` - -### Linux/Mac (Bash) -```bash -chmod +x deploy.sh -./deploy.sh -``` - -### 手动部署 - -#### 1. 构建前端 -```bash -cd frontend -npm install -npm run build -cd .. -``` - -#### 2. 启动服务 -```bash -docker-compose up -d --build -``` - -#### 3. 访问应用 -- 🌐 前端: http://localhost -- 🔗 API: http://localhost/api - -## 📁 配置文件说明 - -- `nginx/nginx.conf` - Nginx 主配置文件 -- `docker-compose.yml` - Docker Compose 编排文件 -- `Dockerfile.backend` - 后端镜像构建文件 -- `nginx/Dockerfile` - Nginx 镜像构建文件 - -## 🔧 常用命令 - -```bash -# 查看日志 -docker-compose logs -f nginx -docker-compose logs -f backend - -# 重启服务 -docker-compose restart nginx - -# 停止服务 -docker-compose down - -# 重新构建 -docker-compose up -d --build -``` - -## 📖 详细文档 - -查看 `NGINX_REVERSE_PROXY_GUIDE.md` 获取完整配置说明。 - diff --git a/demo/REAL_API_INTEGRATION_REPORT.md b/demo/REAL_API_INTEGRATION_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/REAL_API_INTEGRATION_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/RICH_STYLE_IMPLEMENTATION.md b/demo/RICH_STYLE_IMPLEMENTATION.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/RICH_STYLE_IMPLEMENTATION.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/ROUTE_ANALYSIS.md b/demo/ROUTE_ANALYSIS.md new file mode 100644 index 0000000..78ba920 --- /dev/null +++ b/demo/ROUTE_ANALYSIS.md @@ -0,0 +1,313 @@ +# 项目路由分析报告 + +## 统一前缀路由 + +### API 路由前缀 +**主要前缀:`/api/`** + +所有后端 REST API 接口统一使用 `/api/` 作为前缀。 + +## 详细路由分类 + +### 1. REST API 路由(`/api/`) + +#### 认证授权模块 +- `/api/auth/**` - 用户认证(登录、注册) +- `/api/verification/**` - 验证码服务 +- `/api/email/**` - 邮件服务 +- `/api/tencent/**` - 腾讯云服务集成 + +#### 视频生成模块 +- `/api/text-to-video/**` - 文生视频 +- `/api/image-to-video/**` - 图生视频 +- `/api/storyboard-video/**` - 分镜视频 + +#### 用户作品模块 +- `/api/works/**` - 用户作品管理 + +#### 支付订单模块 +- `/api/payments/**` - 支付相关 +- `/api/payments/alipay/**` - 支付宝支付 +- `/api/orders/**` - 订单管理 + +#### 会员积分模块 +- `/api/members/**` - 会员管理 +- `/api/points/**` - 积分系统 + +#### 任务管理模块 +- `/api/task-queue/**` - 任务队列 +- `/api/task-status/**` - 任务状态 +- `/api/cleanup/**` - 任务清理 + +#### 管理后台模块 +- `/api/admin/**` - 管理员接口 +- `/api/dashboard/**` - 数据仪表盘 +- `/api/analytics/**` - 数据分析 + +#### 系统设置模块 +- `/api/api-key/**` - API 密钥管理 +- `/api/prompt/**` - 提示词优化 + +#### 测试诊断模块 +- `/api/test/**` - 测试接口 +- `/api/diagnostic/**` - 诊断接口 +- `/api/polling/**` - 轮询测试 +- `/api/polling-diagnostic/**` - 轮询诊断 +- `/api/monitor/**` - 监控接口 + +#### 公共接口 +- `/api/public/**` - 公共API(无需认证) +- `/api/health/**` - 健康检查接口 + +### 2. 页面路由(非 API) + +#### 用户页面 +- `/login` - 登录页面 +- `/register` - 注册页面 +- `/payment/**` - 支付页面 +- `/orders/**` - 订单页面 + +#### 管理员页面 +- `/settings/**` - 系统设置页面(管理员) +- `/users/**` - 用户管理页面(管理员) + +#### 开发工具 +- `/h2-console/**` - H2 数据库控制台(开发环境) + +### 3. API 文档路由 + +- `/swagger-ui.html` - Swagger UI 主页 +- `/swagger-ui/**` - Swagger UI 资源 +- `/v3/api-docs/**` - OpenAPI 文档 JSON +- `/swagger-resources/**` - Swagger 资源 +- `/webjars/**` - Web 资源库 + +### 4. 静态资源路由 + +- `/css/**` - CSS 样式文件 +- `/js/**` - JavaScript 文件 +- `/uploads/**` - 上传文件 + +## 路由代理配置 + +### Nginx 代理配置 + +#### 1. API 代理(推荐配置) + +```nginx +# API 代理到后端 +location /api/ { + proxy_pass http://172.22.0.1:8080/; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + # 超时设置(视频生成可能需要较长时间) + proxy_connect_timeout 30s; + proxy_send_timeout 900s; + proxy_read_timeout 900s; + + # 支持大文件上传 + client_max_body_size 600M; +} +``` + +#### 2. Swagger UI 代理(可选,用于生产环境) + +```nginx +# API 文档代理 +location ~ ^/(swagger-ui|v3/api-docs|swagger-resources|webjars) { + proxy_pass http://172.22.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; +} +``` + +#### 3. 上传文件代理 + +```nginx +# 上传文件代理 +location /uploads/ { + proxy_pass http://172.22.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + # 缓存设置 + expires 7d; + add_header Cache-Control "public, immutable"; +} +``` + +#### 4. WebSocket 支持(如果需要) + +```nginx +location /ws/ { + proxy_pass http://172.22.0.1:8080; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; +} +``` + +### Apache 代理配置(如果使用 Apache) + +```apache +# 启用代理模块 +LoadModule proxy_module modules/mod_proxy.so +LoadModule proxy_http_module modules/mod_proxy_http.so + +# API 代理 +ProxyPass /api/ http://172.22.0.1:8080/ +ProxyPassReverse /api/ http://172.22.0.1:8080/ + +# Swagger UI 代理 +ProxyPass /swagger-ui/ http://172.22.0.1:8080/swagger-ui/ +ProxyPassReverse /swagger-ui/ http://172.22.0.1:8080/swagger-ui/ + +ProxyPass /v3/api-docs/ http://172.22.0.1:8080/v3/api-docs/ +ProxyPassReverse /v3/api-docs/ http://172.22.0.1:8080/v3/api-docs/ +``` + +## 权限配置 + +### 无需认证(公开访问) + +``` +/login +/register +/api/public/** +/api/auth/** +/api/verification/** +/api/email/** +/api/tencent/** +/api/test/** +/api/health/** +/api/orders/stats +/api/payments/alipay/notify +/api/payments/alipay/return +/swagger-ui/** +/v3/api-docs/** +``` + +### 需要认证 + +``` +/api/orders/**(除 /api/orders/stats) +/api/payments/**(除支付宝回调) +/api/image-to-video/** +/api/text-to-video/** +/api/works/** +/api/points/** +/api/members/** +``` + +### 需要管理员权限 + +``` +/api/dashboard/** +/api/admin/** +/settings/** +/users/** +``` + +## 完整 Nginx 配置示例 + +```nginx +server { + listen 80; + server_name localhost; + root /www/wwwroot/your-domain.com; + index index.html index.htm; + + # 开启gzip压缩 + gzip on; + gzip_vary on; + gzip_min_length 1024; + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript application/vnd.ms-fontobject application/x-font-ttf font/opentype image/svg+xml image/x-icon; + + # 前端路由支持(History模式) + location / { + try_files $uri $uri/ /index.html; + } + + # API 代理到后端(主要路由) + location /api/ { + proxy_pass http://172.22.0.1:8080/; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + # 超时设置 + proxy_connect_timeout 30s; + proxy_send_timeout 900s; + proxy_read_timeout 900s; + + # 支持大文件上传 + client_max_body_size 600M; + } + + # Swagger UI 代理 + location ~ ^/(swagger-ui|v3/api-docs|swagger-resources|webjars) { + proxy_pass http://172.22.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + # 上传文件代理 + location /uploads/ { + proxy_pass http://172.22.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + expires 7d; + add_header Cache-Control "public, immutable"; + } + + # 静态资源缓存 + location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ { + expires 1y; + add_header Cache-Control "public, immutable"; + } + + # 禁止访问隐藏文件 + location ~ /\. { + deny all; + access_log off; + log_not_found off; + } +} +``` + +## 宝塔面板配置 + +在宝塔面板中配置反向代理: + +1. 进入网站设置 → 反向代理 +2. 添加反向代理规则: + - **代理名称**: API代理 + - **目标URL**: http://172.22.0.1:8080 + - **发送域名**: $host + - **代理路径**: /api/ + - **缓存**: 关闭 + +## 总结 + +- **统一API前缀**: `/api/` +- **后端服务地址**: `http://172.22.0.1:8080` +- **主要代理路径**: `/api/` → `http://172.22.0.1:8080/` +- **文档访问**: `/swagger-ui.html` +- **特殊配置**: 需要支持大文件上传(600M)和长时间请求(15分钟) + diff --git a/demo/SES_SENDER_VERIFICATION_GUIDE.md b/demo/SES_SENDER_VERIFICATION_GUIDE.md deleted file mode 100644 index fa103f6..0000000 --- a/demo/SES_SENDER_VERIFICATION_GUIDE.md +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/demo/SES_TROUBLESHOOTING_GUIDE.md b/demo/SES_TROUBLESHOOTING_GUIDE.md deleted file mode 100644 index 05d03e4..0000000 --- a/demo/SES_TROUBLESHOOTING_GUIDE.md +++ /dev/null @@ -1,112 +0,0 @@ -# 腾讯云SES邮件发送问题排查指南 - -## 当前错误 - -``` -错误码: FailedOperation.SendEmailErr -错误信息: 操作失败。您的发送遇到问题,请检查Region参数是否指定准确,若Region参数无误,请联系腾讯云提交工单沟通原因并解决。 -``` - -## 问题诊断 - -这个错误通常表示以下问题之一: - -### 1. **发信地址未验证** ⚠️ 最常见 -- 发信地址 `newletter@vionow.com` 可能未在腾讯云SES控制台的 **广州区域** 验证 -- 需要在对应区域验证发信地址或域名 - -### 2. **模板ID不存在或区域不匹配** -- 模板ID `154360` 可能不存在于广州区域 -- 模板可能在其他区域创建,需要确认模板所在区域 - -### 3. **区域配置不匹配** -- 当前配置区域:`ap-guangzhou`(广州) -- 需要确保腾讯云控制台选择的地域与代码配置一致 - -## 解决步骤 - -### 步骤1: 登录腾讯云SES控制台 - -访问:https://console.cloud.tencent.com/ses - -### 步骤2: 确认选择的地域 - -1. 在控制台右上角,确认当前选择的地域是否为 **"广州"**(ap-guangzhou) -2. 如果选择了其他地域,切换到广州区域 - -### 步骤3: 验证发信地址 - -1. 进入 **"发信地址"** 或 **"身份验证"** 页面 -2. 检查 `newletter@vionow.com` 是否已添加并验证通过 -3. 如果未添加: - - 点击 **"添加发信地址"** - - 输入 `newletter@vionow.com` - - 完成验证(通常会收到验证邮件) - - 等待审核通过(通常几分钟到几小时) - -### 步骤4: 检查模板ID - -1. 进入 **"邮件模板"** 页面 -2. 确认模板ID `154360` 是否存在 -3. 确认模板状态为 **"已审核"** 或 **"已通过"** -4. 如果模板不存在: - - 检查模板是否在其他区域创建 - - 或者在当前区域重新创建模板 - - 获取新的模板ID并更新配置 - -### 步骤5: 检查账户状态 - -1. 确认SES服务已开通 -2. 检查账户是否有发送配额 -3. 检查是否有账户限制或黑名单 - -## 当前配置信息 - -根据您的配置文件: -- **SecretID**: `AKIDoaEjFbqxxqZAcv8EE6oZCg2IQPG1fCxm` -- **区域**: `ap-guangzhou`(广州)✅ -- **发信地址**: `newletter@vionow.com` ⚠️ 需要验证 -- **模板ID**: `154360` ⚠️ 需要确认存在 - -## 快速检查清单 - -- [ ] 在腾讯云SES控制台选择的地域是否为"广州"? -- [ ] 发信地址 `newletter@vionow.com` 是否已在广州区域验证通过? -- [ ] 模板ID `154360` 是否存在于广州区域? -- [ ] 模板状态是否为"已审核"? -- [ ] 账户是否有发送配额? -- [ ] 访问密钥是否具有SES发送邮件权限? - -## 常见问题 - -### Q: 发信地址验证需要多长时间? -A: 通常几分钟到几小时,验证邮件会发送到邮箱地址的邮箱管理员处。 - -### Q: 如何验证域名而不是单个邮箱? -A: 可以添加域名 `vionow.com` 进行验证,验证后该域名下所有邮箱都可以发信。 - -### Q: 模板在不同区域可以通用吗? -A: 不可以,模板是区域隔离的,需要在使用的区域创建模板。 - -### Q: 如何查看模板的详细信息? -A: 在SES控制台的"邮件模板"页面,点击模板ID查看详情,确认模板内容和状态。 - -## 如果仍然失败 - -如果完成以上步骤后仍然失败,请: - -1. **检查腾讯云工单**:提交工单获取技术支持 -2. **查看详细日志**:检查应用日志中的完整错误堆栈 -3. **联系腾讯云客服**:通过控制台联系客服获取帮助 - -## 临时解决方案 - -如果需要快速测试,可以临时使用开发模式: - -```properties -# 在 application-dev.properties 中 -tencent.ses.template-id=0 -``` - -开发模式下不会发送真实邮件,验证码会记录在日志中。 - diff --git a/demo/SINGLE_PAGE_EXPERIENCE.md b/demo/SINGLE_PAGE_EXPERIENCE.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/SINGLE_PAGE_EXPERIENCE.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/SIXTH_ROUND_COMPREHENSIVE_CHECK.md b/demo/SIXTH_ROUND_COMPREHENSIVE_CHECK.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/SIXTH_ROUND_COMPREHENSIVE_CHECK.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/STORYBOARD_VIDEO_CODE_REVIEW.md b/demo/STORYBOARD_VIDEO_CODE_REVIEW.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/STORYBOARD_VIDEO_CODE_REVIEW.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/SYSTEM_SETTINGS_CLEANUP_GUIDE.md b/demo/SYSTEM_SETTINGS_CLEANUP_GUIDE.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/SYSTEM_SETTINGS_CLEANUP_GUIDE.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/TASK_CLEANUP_SYSTEM_README.md b/demo/TASK_CLEANUP_SYSTEM_README.md deleted file mode 100644 index cf23e73..0000000 --- a/demo/TASK_CLEANUP_SYSTEM_README.md +++ /dev/null @@ -1,164 +0,0 @@ -# 任务清理系统实现说明 - -## 功能概述 - -本系统实现了定期清理任务列表的功能,将成功的任务导出到专门的归档表中,失败的任务记录到清理日志后删除。 - -## 系统架构 - -### 1. 数据库表结构 - -#### 成功任务归档表 (`completed_tasks_archive`) -```sql -CREATE TABLE completed_tasks_archive ( - id BIGINT AUTO_INCREMENT PRIMARY KEY, - task_id VARCHAR(255) NOT NULL, - username VARCHAR(255) NOT NULL, - task_type VARCHAR(50) NOT NULL, - prompt TEXT, - aspect_ratio VARCHAR(20), - duration INT, - hd_mode BOOLEAN DEFAULT FALSE, - result_url TEXT, - real_task_id VARCHAR(255), - progress INT DEFAULT 100, - created_at TIMESTAMP NOT NULL, - completed_at TIMESTAMP NOT NULL, - archived_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, - points_cost INT DEFAULT 0 -); -``` - -#### 失败任务清理日志表 (`failed_tasks_cleanup_log`) -```sql -CREATE TABLE failed_tasks_cleanup_log ( - id BIGINT AUTO_INCREMENT PRIMARY KEY, - task_id VARCHAR(255) NOT NULL, - username VARCHAR(255) NOT NULL, - task_type VARCHAR(50) NOT NULL, - error_message TEXT, - created_at TIMESTAMP NOT NULL, - failed_at TIMESTAMP NOT NULL, - cleaned_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP -); -``` - -### 2. 核心组件 - -#### TaskCleanupService -- **功能**: 执行任务清理的核心服务 -- **主要方法**: - - `performFullCleanup()`: 执行完整清理 - - `cleanupTextToVideoTasks()`: 清理文生视频任务 - - `cleanupImageToVideoTasks()`: 清理图生视频任务 - - `cleanupTaskQueue()`: 清理任务队列 - - `cleanupExpiredArchives()`: 清理过期归档 - - `cleanupUserTasks()`: 清理指定用户任务 - -#### TaskQueueScheduler -- **功能**: 定时调度器 -- **调度任务**: - - 每天凌晨4点执行任务清理 (`@Scheduled(cron = "0 0 4 * * ?")`) - -#### CleanupController -- **功能**: 提供手动清理的API接口 -- **接口**: - - `POST /api/cleanup/full-cleanup`: 执行完整清理 - - `POST /api/cleanup/user-tasks/{username}`: 清理指定用户任务 - - `GET /api/cleanup/cleanup-stats`: 获取清理统计信息 - -## 清理流程 - -### 1. 成功任务处理 -1. 查找所有状态为 `COMPLETED` 的任务 -2. 将任务信息导出到 `completed_tasks_archive` 表 -3. 从原始任务表中删除记录 - -### 2. 失败任务处理 -1. 查找所有状态为 `FAILED` 的任务 -2. 将任务信息记录到 `failed_tasks_cleanup_log` 表 -3. 从原始任务表中删除记录 - -### 3. 任务队列清理 -1. 删除状态为 `COMPLETED` 和 `FAILED` 的任务队列记录 - -### 4. 过期归档清理 -1. 删除超过保留期的归档记录和清理日志 - -## 配置参数 - -```properties -# 任务保留天数(默认30天) -task.cleanup.retention-days=30 - -# 归档保留天数(默认365天) -task.cleanup.archive-retention-days=365 -``` - -## 使用方法 - -### 1. 自动清理 -系统每天凌晨4点自动执行清理任务,无需人工干预。 - -### 2. 手动清理 -```bash -# 执行完整清理 -curl -X POST "http://localhost:8080/api/cleanup/full-cleanup" - -# 清理指定用户任务 -curl -X POST "http://localhost:8080/api/cleanup/user-tasks/admin" - -# 获取清理统计信息 -curl "http://localhost:8080/api/cleanup/cleanup-stats" -``` - -### 3. PowerShell测试脚本 -```powershell -# 运行测试脚本 -.\test-cleanup.ps1 -``` - -## 监控和统计 - -### 清理统计信息 -- 当前任务数量(按状态分类) -- 归档任务数量 -- 清理日志数量 -- 配置参数 - -### 日志记录 -- 清理操作的详细日志 -- 错误处理和异常记录 -- 性能监控信息 - -## 安全考虑 - -1. **事务处理**: 所有清理操作都在事务中执行,确保数据一致性 -2. **错误处理**: 完善的异常处理机制,避免清理过程中的数据丢失 -3. **权限控制**: API接口需要适当的权限验证 -4. **数据备份**: 建议在清理前进行数据备份 - -## 扩展功能 - -### 1. 自定义清理策略 -- 支持按任务类型设置不同的保留期 -- 支持按用户等级设置不同的清理策略 - -### 2. 清理报告 -- 生成清理操作的详细报告 -- 支持邮件通知清理结果 - -### 3. 数据导出 -- 支持将归档数据导出为CSV或Excel格式 -- 支持按时间范围导出数据 - -## 注意事项 - -1. **数据恢复**: 清理后的数据无法直接恢复,需要从归档表中查找 -2. **性能影响**: 大量数据清理可能影响系统性能,建议在低峰期执行 -3. **存储空间**: 归档表会占用额外的存储空间,需要定期清理过期数据 -4. **备份策略**: 建议定期备份归档表数据 - ---- -*文档生成时间: 2025-01-24* -*版本: 1.0* diff --git a/demo/TASK_QUEUE_README.md b/demo/TASK_QUEUE_README.md deleted file mode 100644 index 3d5f0a4..0000000 --- a/demo/TASK_QUEUE_README.md +++ /dev/null @@ -1,228 +0,0 @@ -# 任务队列系统 - -## 概述 - -任务队列系统用于管理用户的视频生成任务,实现以下功能: - -- **任务限制**: 每个用户最多同时有3个待处理任务 -- **定时检查**: 每2分钟自动检查一次任务状态 -- **优先级管理**: 支持任务优先级排序 -- **状态跟踪**: 完整的任务状态生命周期管理 -- **自动清理**: 定期清理过期任务 - -## 系统架构 - -### 核心组件 - -1. **TaskQueue 实体类**: 任务队列数据模型 -2. **TaskQueueRepository**: 数据访问层 -3. **TaskQueueService**: 业务逻辑层 -4. **TaskQueueScheduler**: 定时任务调度器 -5. **TaskQueueApiController**: API控制器 - -### 任务状态 - -- `PENDING`: 等待处理 -- `PROCESSING`: 正在处理 -- `COMPLETED`: 已完成 -- `FAILED`: 失败 -- `CANCELLED`: 已取消 -- `TIMEOUT`: 超时 - -## 使用方法 - -### 1. 添加任务到队列 - -```java -// 文生视频任务 -taskQueueService.addTextToVideoTask(username, taskId); - -// 图生视频任务 -taskQueueService.addImageToVideoTask(username, taskId); -``` - -### 2. 获取用户任务队列 - -```java -List userTasks = taskQueueService.getUserTaskQueue(username); -``` - -### 3. 取消任务 - -```java -boolean cancelled = taskQueueService.cancelTask(taskId, username); -``` - -### 4. 获取统计信息 - -```java -long totalCount = taskQueueService.getUserTaskCount(username); -``` - -## API接口 - -### 获取用户任务队列 -``` -GET /api/task-queue/user-tasks -Authorization: Bearer -``` - -### 取消任务 -``` -POST /api/task-queue/cancel/{taskId} -Authorization: Bearer -``` - -### 获取队列统计 -``` -GET /api/task-queue/stats -Authorization: Bearer -``` - -### 手动处理任务(管理员) -``` -POST /api/task-queue/process-pending -Authorization: Bearer -``` - -### 手动检查状态(管理员) -``` -POST /api/task-queue/check-statuses -Authorization: Bearer -``` - -## 定时任务 - -### 1. 处理待处理任务 -- **频率**: 每30秒 -- **功能**: 处理队列中的待处理任务,提交到外部API - -### 2. 检查任务状态 -- **频率**: 每2分钟 -- **功能**: 检查正在处理的任务状态,更新任务状态 - -### 3. 清理过期任务 -- **频率**: 每天凌晨2点 -- **功能**: 清理超过7天的任务记录 - -### 4. 队列状态监控 -- **频率**: 每5分钟 -- **功能**: 记录队列运行状态 - -## 配置参数 - -### 任务限制 -- 每个用户最多3个待处理任务 -- 可通过修改 `MAX_TASKS_PER_USER` 常量调整 - -### 超时设置 -- 默认最大检查次数:30次 -- 检查间隔:2分钟 -- 总超时时间:60分钟 -- 可通过修改 `maxCheckCount` 字段调整 - -### 清理策略 -- 过期时间:7天 -- 可通过修改 `cleanupExpiredTasks` 方法调整 - -## 数据库表结构 - -```sql -CREATE TABLE task_queue ( - id BIGINT AUTO_INCREMENT PRIMARY KEY, - username VARCHAR(100) NOT NULL, - task_id VARCHAR(50) NOT NULL UNIQUE, - task_type ENUM('TEXT_TO_VIDEO', 'IMAGE_TO_VIDEO') NOT NULL, - status ENUM('PENDING', 'PROCESSING', 'COMPLETED', 'FAILED', 'CANCELLED', 'TIMEOUT') NOT NULL DEFAULT 'PENDING', - priority INT NOT NULL DEFAULT 0, - real_task_id VARCHAR(100), - last_check_time DATETIME, - check_count INT NOT NULL DEFAULT 0, - max_check_count INT NOT NULL DEFAULT 30, - error_message TEXT, - created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, - updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - completed_at DATETIME -); -``` - -## 集成说明 - -### 现有服务修改 - -1. **TextToVideoService**: - - 移除了原有的异步处理逻辑 - - 改为添加任务到队列 - -2. **ImageToVideoService**: - - 移除了原有的异步处理逻辑 - - 改为添加任务到队列 - -### 工作流程 - -1. 用户创建任务 → 保存到数据库 → 添加到队列 -2. 定时任务处理队列 → 提交到外部API → 更新状态为PROCESSING -3. 定时任务检查状态 → 查询外部API → 更新任务状态 -4. 任务完成/失败 → 更新原始任务状态 → 从队列中移除 - -## 监控和日志 - -### 关键日志 -- 任务添加到队列 -- 任务状态变更 -- API调用结果 -- 错误和异常 - -### 监控指标 -- 队列中任务数量 -- 各状态任务分布 -- 处理成功率 -- 平均处理时间 - -## 故障处理 - -### 常见问题 - -1. **任务卡在PROCESSING状态** - - 检查外部API是否正常 - - 查看错误日志 - - 手动触发状态检查 - -2. **队列积压** - - 检查外部API响应时间 - - 调整检查频率 - - 增加处理线程 - -3. **任务超时** - - 检查网络连接 - - 调整超时设置 - - 优化API调用 - -### 恢复策略 - -1. **自动恢复**: 系统会自动重试失败的任务 -2. **手动干预**: 通过API接口手动处理 -3. **数据修复**: 清理异常状态的任务 - -## 性能优化 - -### 数据库优化 -- 添加适当的索引 -- 定期清理过期数据 -- 使用分页查询 - -### 系统优化 -- 异步处理任务 -- 批量操作 -- 缓存热点数据 - -## 扩展功能 - -### 未来可扩展的功能 -1. **任务优先级**: 支持动态调整优先级 -2. **负载均衡**: 多实例部署时的任务分配 -3. **任务依赖**: 支持任务间的依赖关系 -4. **通知系统**: 任务完成后的消息通知 -5. **统计分析**: 详细的性能统计和分析 - - diff --git a/demo/TASK_STATUS_CHECK_REPORT.md b/demo/TASK_STATUS_CHECK_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/TASK_STATUS_CHECK_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/TASK_TO_WORK_FLOW.md b/demo/TASK_TO_WORK_FLOW.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/TASK_TO_WORK_FLOW.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/TENCENT_CONFIG_STATUS.md b/demo/TENCENT_CONFIG_STATUS.md deleted file mode 100644 index fa103f6..0000000 --- a/demo/TENCENT_CONFIG_STATUS.md +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/demo/TENCENT_SES_MAIL_INTEGRATION.md b/demo/TENCENT_SES_MAIL_INTEGRATION.md deleted file mode 100644 index fa103f6..0000000 --- a/demo/TENCENT_SES_MAIL_INTEGRATION.md +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/demo/TENCENT_SES_MAIL_MULTIPLE_RECIPIENTS.md b/demo/TENCENT_SES_MAIL_MULTIPLE_RECIPIENTS.md deleted file mode 100644 index fa103f6..0000000 --- a/demo/TENCENT_SES_MAIL_MULTIPLE_RECIPIENTS.md +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/demo/TENCENT_SES_PERMISSION_FIX.md b/demo/TENCENT_SES_PERMISSION_FIX.md deleted file mode 100644 index dc2d553..0000000 --- a/demo/TENCENT_SES_PERMISSION_FIX.md +++ /dev/null @@ -1,104 +0,0 @@ -# 腾讯云SES权限配置指南 - -## 问题描述 - -当前错误: -``` -AuthFailure.UnauthorizedOperation -you are not authorized to perform operation (ses:SendEmail) -resource (*) has no permission -``` - -这个错误表示您的腾讯云访问密钥没有发送邮件的权限。 - -## 解决方案 - -### 方案1:在腾讯云控制台配置权限(推荐) - -1. **登录腾讯云控制台** - - 访问:https://console.cloud.tencent.com/ - -2. **进入访问管理(CAM)** - - 在控制台顶部搜索"访问管理"或"CAM" - - 或者直接访问:https://console.cloud.tencent.com/cam - -3. **配置子账号权限** - - 如果使用的是子账号密钥,需要为该子账号添加SES权限: - - 进入"用户" → 找到对应用户 → 点击"授权" - - 搜索"SES"或"邮件推送" - - 添加策略:`QcloudSESFullAccess`(SES全读写访问权限) - - 或者使用自定义策略,只授予`ses:SendEmail`权限 - -4. **如果使用主账号密钥** - - 主账号默认拥有所有权限 - - 如果仍然报错,可能是密钥错误或已禁用 - - 检查:访问管理 → API密钥管理 → 查看密钥状态 - -5. **验证配置** - - 权限配置后可能需要几分钟生效 - - 重新启动应用并测试 - -### 方案2:使用开发模式(临时方案) - -如果您在开发环境测试,可以暂时使用开发模式: - -1. **修改配置文件** `application-dev.properties`: - ```properties - # 设置为0以使用开发模式(不发送真实邮件,仅在日志中记录验证码) - tencent.ses.template-id=0 - ``` - -2. **开发模式行为** - - 不会调用腾讯云SES API - - 验证码会记录在日志中 - - 可以直接使用日志中的验证码进行测试 - -### 方案3:创建自定义CAM策略(精细化权限) - -如果您只想授予发送邮件权限,可以创建自定义策略: - -1. **进入CAM策略管理** - - 访问:https://console.cloud.tencent.com/cam/policy - -2. **创建自定义策略** - ```json - { - "version": "2.0", - "statement": [ - { - "effect": "allow", - "action": [ - "ses:SendEmail" - ], - "resource": "*" - } - ] - } - ``` - -3. **将策略绑定到子账号** - - 进入"用户" → 找到对应用户 → 点击"授权" - - 选择刚创建的自定义策略 - -## 当前配置信息 - -根据您的配置文件: -- **SecretID**: `AKIDXw8HBtNfjdJm480xljV4QZUDi05wa0DE` -- **区域**: `ap-beijing` -- **发信地址**: `newletter@vionow.com` -- **模板ID**: `154360` - -## 检查清单 - -- [ ] 验证发信地址 `newletter@vionow.com` 已在腾讯云SES控制台验证通过 -- [ ] 验证模板ID `154360` 存在且已审核通过 -- [ ] 验证访问密钥所属账号具有SES发送邮件权限 -- [ ] 验证密钥未过期或被禁用 -- [ ] 等待权限配置生效(通常1-2分钟) - -## 相关文档 - -- [腾讯云SES权限说明](https://cloud.tencent.com/document/product/1288/45321) -- [CAM策略语法](https://cloud.tencent.com/document/product/598/10603) -- [发信地址验证指南](https://cloud.tencent.com/document/product/1288/68353) - diff --git a/demo/TENCENT_SES_STARTUP_CHECKLIST.md b/demo/TENCENT_SES_STARTUP_CHECKLIST.md deleted file mode 100644 index 4b456d3..0000000 --- a/demo/TENCENT_SES_STARTUP_CHECKLIST.md +++ /dev/null @@ -1,295 +0,0 @@ -# 腾讯云SES邮件服务启动检查清单 - -## ✅ 启动前必需准备项 - -### 1. 腾讯云账号和凭证 ⚠️ **必需** - -#### 获取步骤: -1. **登录腾讯云控制台** - - 访问:https://console.cloud.tencent.com - - 如无账号,需先注册 - -2. **获取API密钥** - - 访问:https://console.cloud.tencent.com/cam/capi - - 创建或查看API密钥 - - 获取以下信息: - ``` - SecretID: 例如 AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA - SecretKey: 例如 Gu5t9xGARNpqDXcd3I4WZkFpAALPVZ7pKbNScfFsj - ``` - -3. **开通SES(邮件推送)服务** - - 访问:https://console.cloud.tencent.com/ses - - 确保服务已开通 - - 查看是否有免费额度或已充值 - -### 2. 配置发信地址 ⚠️ **必需** - -#### 配置步骤: -1. **创建发信地址** - - 在SES控制台的"发信地址"中创建 - - 输入你的邮箱地址(例如:noreply@yourdomain.com) - -2. **验证发信地址** - - 腾讯云会向该邮箱发送验证邮件 - - 点击邮件中的验证链接完成验证 - - ⚠️ **重要**:只有验证通过的邮箱才能发送邮件 - -3. **记录已验证的发信地址** - - 例如:`noreply@vionow.com` - - 配置到 `application-dev.properties` 中的 `tencent.ses.from-email` - -### 3. 创建邮件模板 ⚠️ **必需(生产环境)** - -#### 配置步骤: -1. **访问模板管理** - - 在SES控制台的"邮件模板"中创建 - -2. **创建模板** - - 模板类型:选择"触发邮件"或"批量邮件" - - 模板内容示例: - ``` - 您的验证码是:{{code}} - 验证码有效期5分钟,请勿泄露给他人。 - 如果不是您本人操作,请忽略此邮件。 - ``` - - 在模板中使用 `{{变量名}}` 来定义可替换的变量 - -3. **记录模板ID** - - 创建成功后,在模板列表中找到模板ID - - 例如:`12345` - - 配置到 `application-dev.properties` 中的 `tencent.ses.template-id` - -### 4. 配置文件更新 ⚠️ **必需** - -#### 更新 `demo/src/main/resources/application-dev.properties`: - -```properties -# 腾讯云SES配置 -tencent.ses.secret-id=你的SecretID # ⚠️ 必须配置 -tencent.ses.secret-key=你的SecretKey # ⚠️ 必须配置 -tencent.ses.region=ap-beijing # 可选,默认beijing -tencent.ses.from-email=已验证的发信地址 # ⚠️ 必须配置 -tencent.ses.from-name=AIGC平台 # 可选 -tencent.ses.template-id=0 # 0=开发模式,实际模板ID=生产模式 -``` - -#### 当前配置状态检查: -- ✅ SecretID: 已配置(`AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA`) -- ✅ SecretKey: 已配置 -- ✅ Region: 已配置(`ap-beijing`) -- ✅ From-email: 已配置(`noreply@vionow.com`) -- ⚠️ Template-id: 当前为 `0`(开发模式) - -### 5. Maven依赖检查 ✅ **已完成** - -项目已包含腾讯云SDK依赖: -```xml - - com.tencentcloudapi - tencentcloud-sdk-java - 3.1.880 - -``` -✅ 无需额外操作 - -## 📋 快速检查清单 - -启动前请确认: - -- [ ] ✅ 腾讯云账号已注册 -- [ ] ✅ 已获取SecretID和SecretKey -- [ ] ✅ 已开通SES邮件推送服务 -- [ ] ✅ 已创建并验证发信地址 -- [ ] ✅ 配置文件 `application-dev.properties` 已更新正确的凭证 -- [ ] ✅ 发信地址已配置到 `tencent.ses.from-email` -- [ ] ⚠️ 生产环境:已创建邮件模板并获取模板ID - -## 🚀 启动步骤 - -### 方式1:开发模式启动(无需模板,推荐先测试) - -**特点**: -- 不需要创建邮件模板 -- 不会实际发送邮件 -- 验证码会在日志中显示 -- 适合本地开发测试 - -**配置**: -```properties -tencent.ses.template-id=0 # 保持为0 -``` - -**启动**: -```bash -cd demo -./mvnw spring-boot:run -# 或 -mvn spring-boot:run -``` - -**测试**: -```bash -# 调用发送验证码接口 -curl -X POST http://localhost:8080/api/verification/email/send \ - -H "Content-Type: application/json" \ - -d '{"email":"your-email@example.com"}' -``` - -**查看日志**: -``` -WARN 未配置邮件模板ID,使用开发模式。验证码: 123456, 邮箱: your-email@example.com -INFO 开发模式:邮件验证码发送到: your-email@example.com, 验证码: 123456 -``` - -### 方式2:生产模式启动(需要模板) - -**特点**: -- 实际发送邮件 -- 需要配置模板ID -- 需要已验证的发信地址 - -**配置**: -```properties -tencent.ses.template-id=你的模板ID # 例如: 12345 -``` - -**启动**: -```bash -cd demo -./mvnw spring-boot:run -``` - -**测试**: -```bash -# 调用发送验证码接口 -curl -X POST http://localhost:8080/api/verification/email/send \ - -H "Content-Type: application/json" \ - -d '{"email":"your-email@example.com"}' -``` - -**查看日志**: -``` -INFO 开始发送邮件,收件人: your-email@example.com, 主题: 验证码, 模板ID: 12345 -INFO 邮件发送成功,收件人: your-email@example.com, 消息ID: xxx -``` - -## 🔍 启动后验证 - -### 1. 检查服务是否正常启动 -```bash -# 查看启动日志,确认没有错误 -# 应该看到类似信息: -# Started DemoApplication in X.XXX seconds -``` - -### 2. 测试邮件发送功能 -```bash -# 方式1:使用curl -curl -X POST http://localhost:8080/api/verification/email/send \ - -H "Content-Type: application/json" \ - -d '{"email":"test@example.com"}' - -# 方式2:使用前端页面 -# 访问注册/登录页面,输入邮箱,点击发送验证码 -``` - -### 3. 检查日志输出 -- **开发模式**:应该看到"开发模式"相关日志 -- **生产模式**:应该看到"邮件发送成功"或错误信息 - -## ⚠️ 常见问题排查 - -### 问题1:启动时报配置错误 -``` -Could not resolve placeholder 'tencent.ses.secret-id' -``` -**解决**:检查 `application-dev.properties` 文件是否存在并配置了所有必需项 - -### 问题2:发送失败 - 认证错误 -``` -InvalidSecretId.InvalidSignature -``` -**解决**: -- 检查SecretID和SecretKey是否正确 -- 确认没有多余的空格或特殊字符 - -### 问题3:发送失败 - 发信地址未验证 -``` -InvalidParameter.EmailAddressNotVerified -``` -**解决**: -- 确认发信地址已在腾讯云SES控制台验证 -- 检查 `tencent.ses.from-email` 配置是否正确 - -### 问题4:发送失败 - 模板不存在 -``` -ResourceNotFound.TemplateNotFound -``` -**解决**: -- 确认模板ID是否正确 -- 检查模板是否在正确的区域创建 -- 确认模板状态为"已审核通过" - -### 问题5:开发模式下收不到邮件 -**这是正常的!** -开发模式(template-id=0)不会实际发送邮件,只会在日志中显示验证码。 - -## 📝 当前配置状态 - -根据 `application-dev.properties`: - -| 配置项 | 状态 | 说明 | -|--------|------|------| -| SecretID | ✅ 已配置 | 需要确认是否正确 | -| SecretKey | ✅ 已配置 | 需要确认是否正确 | -| Region | ✅ 已配置 | ap-beijing | -| From-email | ✅ 已配置 | noreply@vionow.com | -| Template-id | ⚠️ 开发模式 | 当前为0,如需实际发送需配置模板ID | - -## 🎯 推荐启动流程 - -### 第一步:开发模式测试(推荐先做) -1. ✅ 确保SecretID和SecretKey已配置 -2. ✅ 确保from-email已配置(即使未验证也可先测试) -3. ✅ 保持template-id=0 -4. ✅ 启动服务 -5. ✅ 测试发送验证码接口 -6. ✅ 查看日志确认功能正常 - -### 第二步:配置真实发送(如需要) -1. ✅ 在腾讯云SES控制台验证发信地址 -2. ✅ 创建邮件模板并获取模板ID -3. ✅ 更新template-id配置 -4. ✅ 重启服务 -5. ✅ 测试实际发送邮件 - -## 📚 参考资源 - -- 腾讯云SES控制台:https://console.cloud.tencent.com/ses -- API密钥管理:https://console.cloud.tencent.com/cam/capi -- 腾讯云SES文档:https://cloud.tencent.com/document/product/1288 - -## ✅ 总结 - -**最小启动要求**: -1. ✅ SecretID和SecretKey(已配置) -2. ✅ From-email地址(已配置,需确认已验证) -3. ✅ Template-id=0(开发模式,已配置) - -**当前状态**:**可以直接启动**(开发模式) - -如果需要实际发送邮件,需要: -- 验证发信地址 -- 创建邮件模板并配置template-id - - - - - - - - - - - diff --git a/demo/TEXT_TO_VIDEO_API_README.md b/demo/TEXT_TO_VIDEO_API_README.md deleted file mode 100644 index a8b274d..0000000 --- a/demo/TEXT_TO_VIDEO_API_README.md +++ /dev/null @@ -1,313 +0,0 @@ -# 文生视频API使用指南 - -## 📋 **API概述** - -文生视频API提供了完整的文本生成视频功能,包括任务创建、状态查询、进度监控和任务管理等功能。 - -## 🔗 **API端点** - -### 基础URL -``` -http://localhost:8080/api/text-to-video -``` - -## 📚 **API接口详情** - -### 1. 创建文生视频任务 - -**接口**: `POST /api/text-to-video/create` - -**描述**: 根据文本描述创建视频生成任务 - -**请求头**: -``` -Authorization: Bearer -Content-Type: application/json -``` - -**请求参数**: -```json -{ - "prompt": "一只可爱的小猫在花园里玩耍", - "aspectRatio": "16:9", - "duration": 5, - "hdMode": false -} -``` - -**参数说明**: -- `prompt` (必填): 文本描述,最大1000字符 -- `aspectRatio` (可选): 视频比例,支持 "16:9", "4:3", "1:1", "3:4", "9:16",默认 "16:9" -- `duration` (可选): 视频时长(秒),范围1-60,默认5 -- `hdMode` (可选): 是否高清模式,默认false - -**响应示例**: -```json -{ - "success": true, - "message": "文生视频任务创建成功", - "data": { - "id": 1, - "taskId": "txt2vid_abc123def456", - "username": "test_user", - "prompt": "一只可爱的小猫在花园里玩耍", - "aspectRatio": "16:9", - "duration": 5, - "hdMode": false, - "status": "PENDING", - "progress": 0, - "costPoints": 30, - "createdAt": "2025-01-24T10:00:00", - "updatedAt": "2025-01-24T10:00:00" - } -} -``` - -### 2. 获取任务列表 - -**接口**: `GET /api/text-to-video/tasks` - -**描述**: 获取用户的所有文生视频任务 - -**请求头**: -``` -Authorization: Bearer -``` - -**查询参数**: -- `page` (可选): 页码,从0开始,默认0 -- `size` (可选): 每页数量,最大100,默认10 - -**响应示例**: -```json -{ - "success": true, - "data": [ - { - "id": 1, - "taskId": "txt2vid_abc123def456", - "username": "test_user", - "prompt": "一只可爱的小猫在花园里玩耍", - "aspectRatio": "16:9", - "duration": 5, - "hdMode": false, - "status": "COMPLETED", - "progress": 100, - "resultUrl": "/outputs/txt2vid_abc123def456/video_1737696000000.mp4", - "costPoints": 30, - "createdAt": "2025-01-24T10:00:00", - "updatedAt": "2025-01-24T10:15:00", - "completedAt": "2025-01-24T10:15:00" - } - ], - "total": 1, - "page": 0, - "size": 10 -} -``` - -### 3. 获取任务详情 - -**接口**: `GET /api/text-to-video/tasks/{taskId}` - -**描述**: 获取指定任务的详细信息 - -**请求头**: -``` -Authorization: Bearer -``` - -**路径参数**: -- `taskId`: 任务ID - -**响应示例**: -```json -{ - "success": true, - "data": { - "id": 1, - "taskId": "txt2vid_abc123def456", - "username": "test_user", - "prompt": "一只可爱的小猫在花园里玩耍", - "aspectRatio": "16:9", - "duration": 5, - "hdMode": false, - "status": "COMPLETED", - "progress": 100, - "resultUrl": "/outputs/txt2vid_abc123def456/video_1737696000000.mp4", - "costPoints": 30, - "createdAt": "2025-01-24T10:00:00", - "updatedAt": "2025-01-24T10:15:00", - "completedAt": "2025-01-24T10:15:00" - } -} -``` - -### 4. 获取任务状态 - -**接口**: `GET /api/text-to-video/tasks/{taskId}/status` - -**描述**: 获取任务的当前状态和进度 - -**请求头**: -``` -Authorization: Bearer -``` - -**路径参数**: -- `taskId`: 任务ID - -**响应示例**: -```json -{ - "success": true, - "data": { - "taskId": "txt2vid_abc123def456", - "status": "PROCESSING", - "progress": 65, - "resultUrl": null, - "errorMessage": null - } -} -``` - -### 5. 取消任务 - -**接口**: `POST /api/text-to-video/tasks/{taskId}/cancel` - -**描述**: 取消正在进行的任务 - -**请求头**: -``` -Authorization: Bearer -``` - -**路径参数**: -- `taskId`: 任务ID - -**响应示例**: -```json -{ - "success": true, - "message": "任务已取消" -} -``` - -## 📊 **任务状态说明** - -| 状态 | 描述 | 说明 | -|------|------|------| -| PENDING | 等待中 | 任务已创建,等待处理 | -| PROCESSING | 处理中 | 正在生成视频 | -| COMPLETED | 已完成 | 视频生成成功 | -| FAILED | 失败 | 视频生成失败 | -| CANCELLED | 已取消 | 任务被用户取消 | - -## 💰 **积分消耗规则** - -文生视频的积分消耗计算方式: -- **基础消耗**: 15积分 -- **时长消耗**: 每1秒消耗3积分 -- **高清模式**: 额外消耗25积分 - -**示例**: -- 5秒普通视频: 15 + (5 × 3) = 30积分 -- 10秒高清视频: 15 + (10 × 3) + 25 = 70积分 - -## 🔧 **前端集成示例** - -### 创建任务 -```javascript -import { textToVideoApi } from '@/api/textToVideo' - -const createTask = async () => { - try { - const params = { - prompt: "一只可爱的小猫在花园里玩耍", - aspectRatio: "16:9", - duration: 5, - hdMode: false - } - - const response = await textToVideoApi.createTask(params) - - if (response.data.success) { - console.log('任务创建成功:', response.data.data) - // 开始轮询任务状态 - startPolling(response.data.data.taskId) - } - } catch (error) { - console.error('创建任务失败:', error) - } -} -``` - -### 轮询任务状态 -```javascript -const startPolling = (taskId) => { - const stopPolling = textToVideoApi.pollTaskStatus( - taskId, - // 进度回调 - (progressData) => { - console.log('进度:', progressData.progress + '%') - }, - // 完成回调 - (taskData) => { - console.log('任务完成:', taskData.resultUrl) - }, - // 错误回调 - (error) => { - console.error('任务失败:', error.message) - } - ) - - // 需要时停止轮询 - // stopPolling() -} -``` - -## 🛡️ **安全说明** - -1. **认证要求**: 所有API都需要JWT认证 -2. **权限控制**: 用户只能访问自己的任务 -3. **参数验证**: 严格的输入参数验证 -4. **错误处理**: 完善的错误处理和日志记录 - -## 📝 **错误码说明** - -| 错误码 | 说明 | 解决方案 | -|--------|------|----------| -| 400 | 参数错误 | 检查请求参数格式和内容 | -| 401 | 未认证 | 提供有效的JWT Token | -| 403 | 权限不足 | 确保有访问权限 | -| 404 | 任务不存在 | 检查任务ID是否正确 | -| 500 | 服务器错误 | 联系技术支持 | - -## 🚀 **最佳实践** - -1. **任务创建**: 创建任务后立即开始轮询状态 -2. **错误处理**: 实现完善的错误处理和用户提示 -3. **资源清理**: 页面卸载时停止轮询 -4. **用户体验**: 提供清晰的进度反馈和状态显示 -5. **性能优化**: 合理设置轮询间隔,避免频繁请求 - -## 📞 **技术支持** - -如有问题,请联系开发团队或查看系统日志获取详细错误信息。 - - - - - - - - - - - - - - - - - diff --git a/demo/TEXT_TO_VIDEO_IMPLEMENTATION_SUMMARY.md b/demo/TEXT_TO_VIDEO_IMPLEMENTATION_SUMMARY.md deleted file mode 100644 index fa103f6..0000000 --- a/demo/TEXT_TO_VIDEO_IMPLEMENTATION_SUMMARY.md +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/demo/TEXT_TO_VIDEO_STATUS_REPORT.md b/demo/TEXT_TO_VIDEO_STATUS_REPORT.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/TEXT_TO_VIDEO_STATUS_REPORT.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/THIRD_ROUND_LOGIC_CHECK.md b/demo/THIRD_ROUND_LOGIC_CHECK.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/THIRD_ROUND_LOGIC_CHECK.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/TRANSACTION_AUDIT.md b/demo/TRANSACTION_AUDIT.md deleted file mode 100644 index 77957a9..0000000 --- a/demo/TRANSACTION_AUDIT.md +++ /dev/null @@ -1,99 +0,0 @@ -# 事务配置审计报告 - -## 检查时间 -2025-11-06 - -## 检查范围 -所有服务类中的 `@Transactional` 配置 - -## 检查结果 - -### ✅ 正确配置的服务 - -#### 1. StoryboardVideoService -- **类级别**: 无 `@Transactional` ✅ -- **createTask**: `@Transactional(propagation = Propagation.REQUIRES_NEW)` ✅ - - 快速保存任务,事务立即提交 -- **processTaskAsync**: `@Async` + `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ - - 在事务外执行,调用外部API不会占用连接 -- **其他方法**: 使用独立的事务方法,快速完成 ✅ - -#### 2. TaskQueueService -- **类级别**: `@Transactional` ⚠️ -- **processPendingTasks**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ - - 覆盖类级别配置,在事务外执行 -- **processTask**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ - - 在事务外调用外部API -- **checkTaskStatuses**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ - - 在事务外轮询外部API状态 -- **checkTaskStatusInternal**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ - - 在事务外调用外部API -- **其他方法**: 快速数据库操作,使用独立事务 ✅ - -#### 3. TaskStatusPollingService -- **类级别**: 无 `@Transactional` ✅ -- **pollTaskStatus**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ - - 在事务外轮询外部API -- **其他方法**: 快速数据库操作,使用独立事务 ✅ - -### ⚠️ 需要关注的服务 - -#### 4. TextToVideoService -- **类级别**: `@Transactional` ⚠️ -- **createTask**: 继承类级别事务 - - ✅ 只做快速数据库操作(保存任务、添加到队列) - - ✅ 没有调用外部API - - ✅ 没有长时间运行的操作 - - **结论**: 虽然使用类级别事务,但方法快速完成,应该没问题 - -#### 5. ImageToVideoService -- **类级别**: `@Transactional` ⚠️ -- **createTask**: 继承类级别事务 - - ✅ 只做快速数据库操作(保存任务、添加到队列) - - ✅ 没有调用外部API - - ✅ 没有长时间运行的操作 - - **结论**: 虽然使用类级别事务,但方法快速完成,应该没问题 - -#### 6. UserWorkService -- **类级别**: `@Transactional` ⚠️ -- **所有方法**: 都是快速数据库操作 - - ✅ 没有调用外部API - - ✅ 没有长时间运行的操作 - - **结论**: 应该没问题 - -### 📊 总结 - -#### 长时间运行的方法(已正确配置) -1. ✅ `StoryboardVideoService.processTaskAsync` - `NOT_SUPPORTED` + `@Async` -2. ✅ `TaskQueueService.processPendingTasks` - `NOT_SUPPORTED` -3. ✅ `TaskQueueService.processTask` - `NOT_SUPPORTED` -4. ✅ `TaskQueueService.checkTaskStatuses` - `NOT_SUPPORTED` -5. ✅ `TaskQueueService.checkTaskStatusInternal` - `NOT_SUPPORTED` -6. ✅ `TaskStatusPollingService.pollTaskStatus` - `NOT_SUPPORTED` - -#### 快速事务方法(已正确配置) -- ✅ 所有 `readOnly = true` 的方法 -- ✅ 所有独立的 `@Transactional` 方法(快速数据库操作) -- ✅ `StoryboardVideoService.createTask` - `REQUIRES_NEW`(快速提交) - -#### 潜在问题 -- ⚠️ `TextToVideoService` 和 `ImageToVideoService` 有类级别 `@Transactional` - - 但它们的 `createTask` 方法都是快速操作,应该没问题 - - 如果未来需要在这些方法中调用外部API,需要添加 `NOT_SUPPORTED` - -## 建议 - -### 当前状态 -✅ **所有事务配置都是正确的,应该能正常关闭** - -### 最佳实践建议 -1. ✅ 长时间运行的方法都使用了 `NOT_SUPPORTED` -2. ✅ 异步方法都正确配置了 `@Async` -3. ✅ 快速事务方法都快速完成 -4. ⚠️ 考虑移除 `TextToVideoService` 和 `ImageToVideoService` 的类级别 `@Transactional`,改为方法级别配置,以提高灵活性 - -## 结论 -**✅ 所有事务都能正常关闭,没有发现连接泄漏风险** - - - diff --git a/demo/TRANSACTION_USAGE_REPORT.md b/demo/TRANSACTION_USAGE_REPORT.md deleted file mode 100644 index c61a5e5..0000000 --- a/demo/TRANSACTION_USAGE_REPORT.md +++ /dev/null @@ -1,95 +0,0 @@ -# 事务使用情况完整报告 - -## 检查时间 -2025-11-06 - -## 检查范围 -所有服务类中的 `@Transactional` 使用情况 - -## 检查结果 - -### ✅ 已修复的服务 - -#### 1. StoryboardVideoService -- **类级别**: 无 `@Transactional` ✅ -- **createTask**: `@Transactional(propagation = Propagation.REQUIRES_NEW)` ✅ -- **processTaskAsync**: `@Async` + `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ - - 内部调用使用 `REQUIRES_NEW` 的私有方法: - - `loadTaskInfoInNewTransaction` - `REQUIRES_NEW` + `readOnly = true` ✅ - - `updateTaskStatusInNewTransaction` - `REQUIRES_NEW` ✅ - - `saveStoryboardImageResultInNewTransaction` - `REQUIRES_NEW` ✅ - - `updateTaskStatusToFailedInNewTransaction` - `REQUIRES_NEW` ✅ -- **其他方法**: 快速数据库操作,使用独立事务 ✅ - -### ⚠️ 需要注意的服务 - -#### 2. TextToVideoService -- **类级别**: `@Transactional` ⚠️ -- **createTask**: 继承类级别事务 - - ✅ 只做快速数据库操作,无外部API调用 -- **processTaskWithRealAPI**: `@Async` + 继承类级别事务 ⚠️ - - ⚠️ 直接使用 `taskRepository.save(task)`,会继承类级别事务 - - ⚠️ 在异步方法中调用外部API,可能导致连接泄漏 - - **状态**: 此方法**未被调用**(任务通过 TaskQueueService 处理),不会导致实际泄漏 - - **建议**: 如果未来需要使用,应添加 `NOT_SUPPORTED` 并使用 `REQUIRES_NEW` 的私有方法 - -#### 3. ImageToVideoService -- **类级别**: `@Transactional` ⚠️ -- **createTask**: 继承类级别事务 - - ✅ 只做快速数据库操作,无外部API调用 -- **processTaskWithRealAPI**: `@Async` + 继承类级别事务 ⚠️ - - ⚠️ 直接使用 `taskRepository.save(task)`,会继承类级别事务 - - ⚠️ 在异步方法中调用外部API,可能导致连接泄漏 - - **状态**: 此方法**未被调用**(任务通过 TaskQueueService 处理),不会导致实际泄漏 - - **建议**: 如果未来需要使用,应添加 `NOT_SUPPORTED` 并使用 `REQUIRES_NEW` 的私有方法 - -### ✅ 正确配置的服务 - -#### 4. TaskQueueService -- **类级别**: `@Transactional` ⚠️ -- **processPendingTasks**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ -- **processTask**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ -- **checkTaskStatuses**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ -- **checkTaskStatusInternal**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ -- **其他方法**: 快速数据库操作,使用独立事务 ✅ - -#### 5. TaskStatusPollingService -- **类级别**: 无 `@Transactional` ✅ -- **pollTaskStatus**: `@Transactional(propagation = Propagation.NOT_SUPPORTED)` ✅ -- **其他方法**: 快速数据库操作,使用独立事务 ✅ - -#### 6. UserWorkService -- **类级别**: `@Transactional` ⚠️ -- **所有方法**: 快速数据库操作,无外部API调用 ✅ - -#### 7. UserService -- **类级别**: 无 `@Transactional` ✅ -- **所有方法**: 快速数据库操作,使用独立事务 ✅ - -#### 8. PaymentService -- **类级别**: `@Transactional` ⚠️ -- **所有方法**: 快速数据库操作,无外部API调用 ✅ - -#### 9. OrderService -- **类级别**: `@Transactional` ⚠️ -- **所有方法**: 快速数据库操作,无外部API调用 ✅ - -## 总结 - -### 当前状态 -✅ **所有实际使用的异步方法都已正确配置,不会导致连接泄漏** - -### 潜在问题(但未实际使用) -⚠️ `TextToVideoService.processTaskWithRealAPI` 和 `ImageToVideoService.processTaskWithRealAPI` 有潜在问题,但**未被调用**,不会导致实际泄漏 - -### 建议 -1. ✅ 当前配置正确,无需修改 -2. ⚠️ 如果未来需要使用 `processTaskWithRealAPI` 方法,应按照 `StoryboardVideoService` 的模式修复: - - 在异步方法上添加 `@Transactional(propagation = Propagation.NOT_SUPPORTED)` - - 创建使用 `REQUIRES_NEW` 的私有方法进行数据库操作 - -## 结论 -**✅ 所有实际使用的事务配置都是正确的,不会导致连接泄漏** - - - diff --git a/demo/TestApiConnection.java b/demo/TestApiConnection.java deleted file mode 100644 index dee2beb..0000000 --- a/demo/TestApiConnection.java +++ /dev/null @@ -1,52 +0,0 @@ -import kong.unirest.HttpResponse; -import kong.unirest.Unirest; -import kong.unirest.UnirestException; -import com.fasterxml.jackson.databind.ObjectMapper; -import java.util.Map; - -public class TestApiConnection { - public static void main(String[] args) { - String apiBaseUrl = "http://116.62.4.26:8081"; - String apiKey = "ak_5f13ec469e6047d5b8155c3cc91350e2"; - - System.out.println("测试API连接..."); - System.out.println("API端点: " + apiBaseUrl); - System.out.println("API密钥: " + apiKey.substring(0, 10) + "..."); - - try { - // 测试获取模型列表 - System.out.println("\n1. 测试获取模型列表..."); - HttpResponse modelsResponse = Unirest.get(apiBaseUrl + "/user/ai/models") - .header("Authorization", "Bearer " + apiKey) - .asString(); - - System.out.println("状态码: " + modelsResponse.getStatus()); - System.out.println("响应内容: " + modelsResponse.getBody()); - - // 测试提交任务 - System.out.println("\n2. 测试提交文生视频任务..."); - String requestBody = "{\n" + - " \"modelName\": \"sc_sora2_text_landscape_10s_small\",\n" + - " \"prompt\": \"一只猫在飞\",\n" + - " \"aspectRatio\": \"16:9\",\n" + - " \"imageToVideo\": false\n" + - "}"; - - HttpResponse submitResponse = Unirest.post(apiBaseUrl + "/user/ai/tasks/submit") - .header("Content-Type", "application/json") - .header("Authorization", "Bearer " + apiKey) - .body(requestBody) - .asString(); - - System.out.println("状态码: " + submitResponse.getStatus()); - System.out.println("响应内容: " + submitResponse.getBody()); - - } catch (UnirestException e) { - System.err.println("API调用异常: " + e.getMessage()); - e.printStackTrace(); - } catch (Exception e) { - System.err.println("其他异常: " + e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/demo/UNIREST_MIGRATION.md b/demo/UNIREST_MIGRATION.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/UNIREST_MIGRATION.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/USER_WORKS_SYSTEM_README.md b/demo/USER_WORKS_SYSTEM_README.md deleted file mode 100644 index 6c030a0..0000000 --- a/demo/USER_WORKS_SYSTEM_README.md +++ /dev/null @@ -1,183 +0,0 @@ -# 用户作品管理系统 - -## 概述 - -用户作品管理系统实现了任务完成后自动保存结果到"我的作品"中的功能,用户可以管理自己的视频作品,包括查看、编辑、删除、分享等操作。 - -## 系统特性 - -### 🎬 **作品管理** -- **自动保存**: 任务完成后自动创建作品记录 -- **作品分类**: 支持文生视频和图生视频两种类型 -- **状态管理**: 处理中、已完成、失败、已删除四种状态 -- **软删除**: 支持作品软删除,保留数据完整性 - -### 📊 **作品统计** -- **浏览统计**: 记录作品浏览次数 -- **点赞功能**: 支持作品点赞 -- **下载统计**: 记录作品下载次数 -- **积分记录**: 记录作品消耗的积分 - -### 🔍 **作品发现** -- **公开作品**: 支持作品公开分享 -- **搜索功能**: 根据提示词搜索作品 -- **标签系统**: 支持标签分类和搜索 -- **热门排行**: 按浏览次数排序的热门作品 - -## API接口 - -### 我的作品管理 - -#### 获取我的作品列表 -``` -GET /api/works/my-works?page=0&size=10 -Authorization: Bearer -``` - -#### 获取作品详情 -``` -GET /api/works/{workId} -Authorization: Bearer -``` - -#### 更新作品信息 -``` -PUT /api/works/{workId} -Authorization: Bearer -Content-Type: application/json -``` - -#### 删除作品 -``` -DELETE /api/works/{workId} -Authorization: Bearer -``` - -### 作品互动 - -#### 点赞作品 -``` -POST /api/works/{workId}/like -Authorization: Bearer -``` - -#### 下载作品 -``` -POST /api/works/{workId}/download -Authorization: Bearer -``` - -### 公开作品浏览 - -#### 获取公开作品列表 -``` -GET /api/works/public?page=0&size=10&type=TEXT_TO_VIDEO&sort=popular -``` - -#### 搜索公开作品 -``` -GET /api/works/search?keyword=小猫&page=0&size=10 -``` - -#### 根据标签搜索作品 -``` -GET /api/works/tag/可爱?page=0&size=10 -``` - -## 工作流程 - -### 1. 任务完成流程 -``` -任务完成 → 扣除积分 → 创建作品 → 更新任务状态 -``` - -### 2. 作品创建流程 -``` -获取任务信息 → 提取作品数据 → 生成作品标题 → 保存作品记录 -``` - -### 3. 作品管理流程 -``` -查看作品 → 编辑信息 → 设置公开 → 分享作品 -``` - -## 集成说明 - -### TaskQueueService 集成 - -在 `TaskQueueService.updateTaskAsCompleted()` 方法中集成了作品创建: - -```java -private void updateTaskAsCompleted(TaskQueue taskQueue, String resultUrl) { - // 扣除冻结的积分 - userService.deductFrozenPoints(taskQueue.getTaskId()); - - // 创建用户作品 - try { - UserWork work = userWorkService.createWorkFromTask(taskQueue.getTaskId(), resultUrl); - logger.info("创建用户作品成功: {}, 任务ID: {}", work.getId(), taskQueue.getTaskId()); - } catch (Exception workException) { - logger.error("创建用户作品失败: {}", taskQueue.getTaskId(), workException); - // 作品创建失败不影响任务完成状态 - } - - // 更新原始任务状态 - updateOriginalTaskStatus(taskQueue, "COMPLETED", resultUrl, null); -} -``` - -## 前端集成示例 - -### 获取我的作品列表 -```javascript -const getMyWorks = async (page = 0, size = 10) => { - const response = await fetch(`/api/works/my-works?page=${page}&size=${size}`, { - headers: { - 'Authorization': `Bearer ${token}` - } - }); - const data = await response.json(); - return data; -}; -``` - -### 更新作品信息 -```javascript -const updateWork = async (workId, updateData) => { - const response = await fetch(`/api/works/${workId}`, { - method: 'PUT', - headers: { - 'Authorization': `Bearer ${token}`, - 'Content-Type': 'application/json' - }, - body: JSON.stringify(updateData) - }); - const data = await response.json(); - return data; -}; -``` - -## 注意事项 - -1. **数据一致性**: 确保任务状态与作品状态一致 -2. **异常处理**: 作品创建失败不影响任务完成 -3. **存储管理**: 定期清理过期的失败作品 -4. **性能监控**: 监控作品查询和统计性能 -5. **用户体验**: 提供友好的作品管理界面 - - - - - - - - - - - - - - - - - diff --git a/demo/VIDEO_GENERATION_DIAGNOSTIC.md b/demo/VIDEO_GENERATION_DIAGNOSTIC.md deleted file mode 100644 index 0519ecb..0000000 --- a/demo/VIDEO_GENERATION_DIAGNOSTIC.md +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/add_bio_column.sql b/demo/add_bio_column.sql deleted file mode 100644 index e1fbf38..0000000 --- a/demo/add_bio_column.sql +++ /dev/null @@ -1,7 +0,0 @@ --- 添加个人简介字段到用户表 --- 执行此脚本以更新数据库schema - -ALTER TABLE users ADD COLUMN bio TEXT COMMENT '个人简介'; - - - diff --git a/demo/backend/Dockerfile b/demo/backend/Dockerfile new file mode 100644 index 0000000..7c062f2 --- /dev/null +++ b/demo/backend/Dockerfile @@ -0,0 +1,52 @@ +# 多阶段构建:构建阶段 +FROM maven:3.9-eclipse-temurin-21 AS builder +WORKDIR /app + +# 复制 pom.xml 并下载依赖(利用Docker缓存) +COPY pom.xml . +RUN mvn dependency:go-offline -B || true + +# 复制源码 +COPY src ./src + +# 打包应用(跳过测试) +RUN mvn clean package -DskipTests -B + +# 生产阶段 +FROM eclipse-temurin:21-jre +WORKDIR /app + +# 安装时区支持和wget(健康检查) +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + tzdata \ + wget \ + curl && \ + ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ + echo "Asia/Shanghai" > /etc/timezone && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# 创建非root用户(安全考虑) +RUN groupadd -r spring && useradd -r -g spring spring + +# 创建必要的目录并设置权限 +RUN mkdir -p /app/uploads /app/temp /app/logs && \ + chown -R spring:spring /app + +# 从构建阶段复制JAR文件(项目生成的JAR文件名:demo-0.0.1-SNAPSHOT.jar) +COPY --from=builder --chown=spring:spring /app/target/demo-0.0.1-SNAPSHOT.jar app.jar + +# 切换到非root用户 +USER spring + +EXPOSE 8080 + +# JVM 参数优化(适配50人并发,建议2-4GB内存) +ENV JAVA_OPTS="-Xmx2g -Xms1g -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Djava.security.egd=file:/dev/./urandom" + +# 健康检查(检查应用是否响应,不依赖Actuator) +HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ + CMD wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1 + +ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar app.jar"] diff --git a/demo/backend/Dockerfile.java21 b/demo/backend/Dockerfile.java21 new file mode 100644 index 0000000..8b70a80 --- /dev/null +++ b/demo/backend/Dockerfile.java21 @@ -0,0 +1,48 @@ +# 多阶段构建:构建阶段(适配Java 21) +FROM maven:3.9-eclipse-temurin-21 as builder +WORKDIR /app +COPY pom.xml . +# 复制源码 +COPY src ./src +# 打包应用(跳过测试) +RUN mvn clean package -DskipTests + +# 生产阶段 +FROM eclipse-temurin:21-jre +WORKDIR /app + +# 安装时区支持和wget(健康检查) +# FFmpeg 暂时跳过,可稍后手动安装 +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + tzdata \ + wget \ + curl && \ + ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ + echo "Asia/Shanghai" > /etc/timezone && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# 创建非root用户(安全考虑) +RUN groupadd -r spring && useradd -r -g spring spring + +# 创建必要的目录并设置权限 +RUN mkdir -p /app/uploads /app/temp /app/logs && \ + chown -R spring:spring /app + +USER spring + +# 从构建阶段复制JAR文件(项目生成的JAR文件名:demo-0.0.1-SNAPSHOT.jar) +COPY --from=builder --chown=spring:spring /app/target/demo-0.0.1-SNAPSHOT.jar app.jar + +EXPOSE 8080 + +# JVM 参数优化(适配50人并发,建议2-4GB内存) +ENV JAVA_OPTS="-Xmx2g -Xms1g -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Djava.security.egd=file:/dev/./urandom" + +# 健康检查(检查应用是否响应,不依赖Actuator) +HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ + CMD wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1 + +ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar app.jar"] + diff --git a/demo/backend/Dockerfile.linux b/demo/backend/Dockerfile.linux new file mode 100644 index 0000000..3efd4f1 --- /dev/null +++ b/demo/backend/Dockerfile.linux @@ -0,0 +1,54 @@ +# 多阶段构建:构建阶段 +FROM maven:3.9-eclipse-temurin-21 AS builder +WORKDIR /app + +# 复制 pom.xml 并下载依赖(利用Docker缓存) +COPY pom.xml . +RUN mvn dependency:go-offline -B || true + +# 复制源码 +COPY src ./src + +# 打包应用(跳过测试) +RUN mvn clean package -DskipTests -B + +# 生产阶段 +FROM eclipse-temurin:21-jre +WORKDIR /app + +# 安装时区支持和wget(健康检查) +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + tzdata \ + wget \ + curl && \ + ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ + echo "Asia/Shanghai" > /etc/timezone && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# 创建非root用户(安全考虑) +RUN groupadd -r spring && useradd -r -g spring spring + +# 创建必要的目录并设置权限 +RUN mkdir -p /app/uploads /app/temp /app/logs && \ + chown -R spring:spring /app + +# 从构建阶段复制JAR文件(项目生成的JAR文件名:demo-0.0.1-SNAPSHOT.jar) +COPY --from=builder --chown=spring:spring /app/target/demo-0.0.1-SNAPSHOT.jar app.jar + +# 切换到非root用户 +USER spring + +EXPOSE 8080 + +# JVM 参数优化(适配50人并发,建议2-4GB内存) +ENV JAVA_OPTS="-Xmx2g -Xms1g -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Djava.security.egd=file:/dev/./urandom" + +# 健康检查(检查应用是否响应,不依赖Actuator) +HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ + CMD wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1 + +ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar app.jar"] + + diff --git a/demo/cancel_image_to_video_task.sql b/demo/cancel_image_to_video_task.sql deleted file mode 100644 index 87ae1d4..0000000 --- a/demo/cancel_image_to_video_task.sql +++ /dev/null @@ -1,64 +0,0 @@ --- 取消图生视频任务: img2vid_1957126e9dbd46e2 --- 1. 更新任务队列状态为 CANCELLED -UPDATE task_queue -SET status = 'CANCELLED', - error_message = '用户取消了任务', - updated_at = NOW() -WHERE task_id = 'img2vid_1957126e9dbd46e2'; - --- 2. 更新图生视频任务状态为 CANCELLED -UPDATE image_to_video_tasks -SET status = 'CANCELLED', - error_message = '用户取消了任务', - updated_at = NOW() -WHERE task_id = 'img2vid_1957126e9dbd46e2'; - --- 3. 更新用户积分(减少冻结积分) --- 注意:只减少 frozen_points,不增加 points(总积分不变) -UPDATE users -SET frozen_points = frozen_points - ( - SELECT COALESCE(freeze_points, 0) - FROM points_freeze_records - WHERE task_id = 'img2vid_1957126e9dbd46e2' - AND status = 'FROZEN' - LIMIT 1 -), - updated_at = NOW() -WHERE username = ( - SELECT username - FROM task_queue - WHERE task_id = 'img2vid_1957126e9dbd46e2' - LIMIT 1 -) -AND EXISTS ( - SELECT 1 - FROM points_freeze_records - WHERE task_id = 'img2vid_1957126e9dbd46e2' - AND status = 'FROZEN' -); - --- 4. 返还冻结的积分(将冻结记录状态改为 RETURNED) -UPDATE points_freeze_records -SET status = 'RETURNED', - updated_at = NOW() -WHERE task_id = 'img2vid_1957126e9dbd46e2' - AND status = 'FROZEN'; - --- 5. 查询任务信息(用于确认) -SELECT - tq.task_id, - tq.status as queue_status, - tq.username, - tq.error_message, - itvt.status as task_status, - pfr.freeze_points, - pfr.status as freeze_status -FROM task_queue tq -LEFT JOIN image_to_video_tasks itvt ON tq.task_id = itvt.task_id -LEFT JOIN points_freeze_records pfr ON tq.task_id = pfr.task_id -WHERE tq.task_id = 'img2vid_1957126e9dbd46e2'; - --- 查询结果 -SELECT '任务已取消' as result; - - diff --git a/demo/cancel_task.sql b/demo/cancel_task.sql deleted file mode 100644 index 33eda8a..0000000 --- a/demo/cancel_task.sql +++ /dev/null @@ -1,63 +0,0 @@ --- 取消任务: txt2vid_512378411b084a07 --- 1. 更新任务队列状态为 CANCELLED -UPDATE task_queue -SET status = 'CANCELLED', - error_message = '用户取消了任务', - updated_at = NOW() -WHERE task_id = 'txt2vid_512378411b084a07'; - --- 2. 更新文生视频任务状态为 CANCELLED -UPDATE text_to_video_tasks -SET status = 'CANCELLED', - error_message = '用户取消了任务', - updated_at = NOW() -WHERE task_id = 'txt2vid_512378411b084a07'; - --- 3. 更新用户积分(减少冻结积分) --- 注意:只减少 frozen_points,不增加 points(总积分不变) -UPDATE users -SET frozen_points = frozen_points - ( - SELECT COALESCE(freeze_points, 0) - FROM points_freeze_records - WHERE task_id = 'txt2vid_512378411b084a07' - AND status = 'FROZEN' - LIMIT 1 -), - updated_at = NOW() -WHERE username = ( - SELECT username - FROM task_queue - WHERE task_id = 'txt2vid_512378411b084a07' - LIMIT 1 -) -AND EXISTS ( - SELECT 1 - FROM points_freeze_records - WHERE task_id = 'txt2vid_512378411b084a07' - AND status = 'FROZEN' -); - --- 4. 返还冻结的积分(将冻结记录状态改为 RETURNED) -UPDATE points_freeze_records -SET status = 'RETURNED', - updated_at = NOW() -WHERE task_id = 'txt2vid_512378411b084a07' - AND status = 'FROZEN'; - --- 5. 查询任务信息(用于确认) -SELECT - tq.task_id, - tq.status as queue_status, - tq.username, - tq.error_message, - ttvt.status as task_status, - pfr.freeze_points, - pfr.status as freeze_status -FROM task_queue tq -LEFT JOIN text_to_video_tasks ttvt ON tq.task_id = ttvt.task_id -LEFT JOIN points_freeze_records pfr ON tq.task_id = pfr.task_id -WHERE tq.task_id = 'txt2vid_512378411b084a07'; - --- 查询结果 -SELECT '任务已取消' as result; - diff --git a/demo/check_queue_status.sql b/demo/check_queue_status.sql deleted file mode 100644 index 3d94cd8..0000000 --- a/demo/check_queue_status.sql +++ /dev/null @@ -1,61 +0,0 @@ --- 检查任务队列状态 -SELECT - 'task_queue' as table_name, - status, - COUNT(*) as count -FROM task_queue -GROUP BY status -UNION ALL -SELECT - 'image_to_video_tasks' as table_name, - status, - COUNT(*) as count -FROM image_to_video_tasks -GROUP BY status; - --- 查看最近的任务 -SELECT - 'Recent Task Queue' as info, - task_id, - username, - task_type, - status, - real_task_id, - check_count, - error_message, - created_at -FROM task_queue -ORDER BY created_at DESC -LIMIT 10; - --- 查看最近的图生视频任务 -SELECT - 'Recent Image Tasks' as info, - task_id, - username, - status, - progress, - real_task_id, - error_message, - first_frame_url, - created_at -FROM image_to_video_tasks -ORDER BY created_at DESC -LIMIT 10; - --- 查看失败的任务详情 -SELECT - 'Failed Tasks' as info, - tq.task_id, - tq.username, - tq.status as queue_status, - tq.error_message as queue_error, - it.status as task_status, - it.error_message as task_error, - it.first_frame_url, - tq.created_at -FROM task_queue tq -LEFT JOIN image_to_video_tasks it ON tq.task_id = it.task_id -WHERE tq.status = 'FAILED' OR it.status = 'FAILED' -ORDER BY tq.created_at DESC; - diff --git a/demo/cleanup_failed_tasks.sql b/demo/cleanup_failed_tasks.sql deleted file mode 100644 index e600a12..0000000 --- a/demo/cleanup_failed_tasks.sql +++ /dev/null @@ -1,20 +0,0 @@ --- 清除失败任务的SQL脚本 --- 数据库:aigc_platform - --- 1. 清除任务队列中的失败任务 -DELETE FROM task_queue WHERE status = 'FAILED'; - --- 2. 清除文生视频任务中的失败任务 -DELETE FROM text_to_video_tasks WHERE status = 'FAILED'; - --- 3. 清除图生视频任务中的失败任务 -DELETE FROM image_to_video_tasks WHERE status = 'FAILED'; - --- 4. 清除分镜视频任务中的失败任务 -DELETE FROM storyboard_video_tasks WHERE status = 'FAILED'; - --- 查看删除结果(可选) --- SELECT COUNT(*) as failed_queue_tasks FROM task_queue WHERE status = 'FAILED'; --- SELECT COUNT(*) as failed_text_tasks FROM text_to_video_tasks WHERE status = 'FAILED'; --- SELECT COUNT(*) as failed_image_tasks FROM image_to_video_tasks WHERE status = 'FAILED'; --- SELECT COUNT(*) as failed_storyboard_tasks FROM storyboard_video_tasks WHERE status = 'FAILED'; diff --git a/demo/database_baota_20251108_160249.zip b/demo/database_baota_20251108_160249.zip new file mode 100644 index 0000000000000000000000000000000000000000..c95574806765613d5fdf221a20d8595dd5580540 GIT binary patch literal 4807 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 literal 0 HcmV?d00001 diff --git a/demo/database_baota_deploy/README.md b/demo/database_baota_deploy/README.md new file mode 100644 index 0000000..0de7f83 --- /dev/null +++ b/demo/database_baota_deploy/README.md @@ -0,0 +1,269 @@ +# AIGC平台 - 宝塔数据库部署包 + +## 📦 部署包内容 + +``` +database_baota_deploy/ +├── init_database.sql # 完整数据库初始化脚本(推荐) +├── update_admin_user.sql # 管理员权限设置脚本 +├── 数据库完整结构-宝塔导入.sql # 备用完整结构 +├── 宝塔数据库部署指南.md # 详细部署文档 +├── deploy_database.sh # Linux自动部署脚本 +└── README.md # 本文件 +``` + +## 🚀 快速开始 + +### 方法一:使用宝塔面板(推荐,适合新手) + +1. **阅读部署指南** + ``` + 打开 "宝塔数据库部署指南.md" 查看详细步骤 + ``` + +2. **创建数据库** + - 登录宝塔面板 + - 数据库 → 添加数据库 + - 数据库名: `aigc_platform` + - 字符集: `utf8mb4` + +3. **导入SQL文件** + - 点击数据库的【管理】进入phpMyAdmin + - 导入 → 选择文件 → 选择 `init_database.sql` + - 执行导入 + +4. **配置应用** + - 将数据库信息填入 `application-prod.properties` + +### 方法二:使用自动脚本(适合Linux命令行用户) + +```bash +# 1. 上传整个部署包到服务器 +scp -r database_baota_deploy root@your-server:/root/ + +# 2. SSH登录服务器 +ssh root@your-server + +# 3. 进入部署目录 +cd /root/database_baota_deploy + +# 4. 给脚本执行权限 +chmod +x deploy_database.sh + +# 5. 运行自动部署脚本 +bash deploy_database.sh + +# 6. 按提示输入MySQL root密码和新数据库密码 +# 7. 等待部署完成,保存输出的数据库配置信息 +``` + +### 方法三:手动命令行部署 + +```bash +# 1. 登录MySQL +mysql -uroot -p + +# 2. 创建数据库 +CREATE DATABASE aigc_platform DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +# 3. 创建用户 +CREATE USER 'aigc_platform'@'localhost' IDENTIFIED BY '你的密码'; +GRANT ALL PRIVILEGES ON aigc_platform.* TO 'aigc_platform'@'localhost'; +FLUSH PRIVILEGES; +EXIT; + +# 4. 导入数据库 +mysql -uaigc_platform -p aigc_platform < init_database.sql + +# 5. 验证 +mysql -uaigc_platform -p +USE aigc_platform; +SHOW TABLES; +``` + +## 📋 数据库表清单 + +部署成功后应包含以下13个表: + +| 表名 | 说明 | +|------|------| +| `users` | 用户表 | +| `payments` | 支付记录表 | +| `orders` | 订单表 | +| `order_items` | 订单明细表 | +| `text_to_video_tasks` | 文生视频任务表 | +| `image_to_video_tasks` | 图生视频任务表 | +| `storyboard_video_tasks` | 分镜视频任务表 | +| `task_queue` | 任务队列表 | +| `task_status` | 任务状态表 | +| `user_works` | 用户作品表 | +| `user_membership` | 用户会员表 | +| `user_activity_stats` | 用户活动统计表 | +| `failed_tasks_cleanup_log` | 失败任务清理日志表 | + +## ⚙️ 应用配置 + +### Spring Boot 配置文件 + +**文件**: `src/main/resources/application-prod.properties` + +```properties +# 数据库配置 +spring.datasource.url=jdbc:mysql://localhost:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true +spring.datasource.username=aigc_platform +spring.datasource.password=你的数据库密码 +spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver + +# 数据库连接池配置 +spring.datasource.hikari.maximum-pool-size=50 +spring.datasource.hikari.minimum-idle=10 +spring.datasource.hikari.idle-timeout=300000 +spring.datasource.hikari.max-lifetime=1200000 +spring.datasource.hikari.connection-timeout=30000 + +# JPA配置 +spring.jpa.hibernate.ddl-auto=update +spring.jpa.show-sql=false +``` + +### 宝塔反向代理配置(可选) + +如果使用宝塔的Nginx反向代理: + +```nginx +location / { + proxy_pass http://localhost:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; +} +``` + +## 🔐 管理员账号 + +### 默认管理员邮箱 + +``` +984523799@qq.com +``` + +### 设置流程 + +1. **首次注册** + - 使用 `984523799@qq.com` 在前端注册账号 + - 数据库会自动将此用户设置为管理员 + +2. **手动设置** + - 如果自动设置未生效,执行 `update_admin_user.sql` + +3. **验证权限** + ```sql + SELECT id, username, email, role, points + FROM users + WHERE email = '984523799@qq.com'; + ``` + - `role` 字段应为 `ROLE_ADMIN` + +## 🛠️ 故障排查 + +### 导入失败 + +**问题**: 导入SQL时报错 + +**解决**: +1. 确保数据库字符集为 `utf8mb4` +2. 检查SQL文件编码为 UTF-8 +3. 尝试分段导入或使用命令行导入 + +### 连接失败 + +**问题**: 应用无法连接数据库 + +**检查项**: +1. MySQL服务是否运行: `systemctl status mysql` +2. 用户名密码是否正确 +3. 数据库名称是否正确 +4. 防火墙是否开放3306端口(如需远程连接) +5. MySQL是否允许远程连接(`bind-address`配置) + +### 权限问题 + +**问题**: Access denied + +**解决**: +```sql +-- 重新授权 +GRANT ALL PRIVILEGES ON aigc_platform.* TO 'aigc_platform'@'localhost'; +GRANT ALL PRIVILEGES ON aigc_platform.* TO 'aigc_platform'@'%'; +FLUSH PRIVILEGES; +``` + +## 📊 数据库维护 + +### 定期备份 + +**宝塔面板**: +- 计划任务 → 添加任务 +- 任务类型: 备份数据库 +- 执行周期: 每天凌晨3点 +- 保留份数: 7-30份 + +**命令行备份**: +```bash +# 手动备份 +mysqldump -uaigc_platform -p aigc_platform > backup_$(date +%Y%m%d_%H%M%S).sql + +# 定时备份(添加到crontab) +0 3 * * * mysqldump -uaigc_platform -p'密码' aigc_platform > /backup/aigc_$(date +\%Y\%m\%d).sql +``` + +### 性能优化 + +```sql +-- 查看表大小 +SELECT + table_name, + ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size (MB)" +FROM information_schema.TABLES +WHERE table_schema = 'aigc_platform' +ORDER BY (data_length + index_length) DESC; + +-- 优化表 +OPTIMIZE TABLE users; +OPTIMIZE TABLE text_to_video_tasks; +OPTIMIZE TABLE image_to_video_tasks; +``` + +## 📞 技术支持 + +遇到问题? + +1. **查看日志** + - 宝塔面板: 数据库 → 日志 + - 命令行: `/var/log/mysql/error.log` + +2. **查看文档** + - 详细部署指南: `宝塔数据库部署指南.md` + +3. **验证数据库** + ```bash + mysql -uaigc_platform -p -e "USE aigc_platform; SHOW TABLES;" + ``` + +## ✅ 部署检查清单 + +- [ ] MySQL服务正在运行 +- [ ] 数据库 `aigc_platform` 已创建 +- [ ] 字符集为 `utf8mb4` +- [ ] 用户 `aigc_platform` 已创建并授权 +- [ ] 13个数据表已创建 +- [ ] 管理员邮箱 `984523799@qq.com` 已配置 +- [ ] 应用配置文件已更新数据库信息 +- [ ] 数据库备份计划已设置 + +--- + +**版本**: 1.0 +**更新日期**: 2025-11-10 +**适用系统**: 宝塔面板 / Linux / MySQL 8.0+ diff --git a/demo/database_baota_deploy/deploy_database.sh b/demo/database_baota_deploy/deploy_database.sh new file mode 100644 index 0000000..14efb00 --- /dev/null +++ b/demo/database_baota_deploy/deploy_database.sh @@ -0,0 +1,141 @@ +#!/bin/bash +# 宝塔数据库快速部署脚本 +# 使用方法:bash deploy_database.sh + +echo "========================================" +echo " AIGC平台 - 宝塔数据库部署脚本" +echo "========================================" +echo "" + +# 颜色定义 +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +NC='\033[0m' # No Color + +# 数据库配置 +DB_NAME="aigc_platform" +DB_USER="aigc_platform" +DB_CHARSET="utf8mb4" +DB_COLLATE="utf8mb4_unicode_ci" + +# 检查是否为root用户 +if [ "$EUID" -ne 0 ]; then + echo -e "${RED}请使用root权限运行此脚本${NC}" + echo "使用方法: sudo bash deploy_database.sh" + exit 1 +fi + +echo "步骤 1/5: 检查MySQL服务状态..." +if systemctl is-active --quiet mysql || systemctl is-active --quiet mysqld || systemctl is-active --quiet mariadb; then + echo -e "${GREEN}✓ MySQL服务正在运行${NC}" +else + echo -e "${RED}✗ MySQL服务未运行${NC}" + echo "正在启动MySQL服务..." + systemctl start mysql || systemctl start mysqld || systemctl start mariadb + sleep 2 +fi +echo "" + +echo "步骤 2/5: 输入MySQL root密码" +read -sp "请输入MySQL root密码: " MYSQL_ROOT_PASSWORD +echo "" +echo "" + +# 测试MySQL连接 +echo "测试MySQL连接..." +mysql -uroot -p"$MYSQL_ROOT_PASSWORD" -e "SELECT 1;" > /dev/null 2>&1 +if [ $? -ne 0 ]; then + echo -e "${RED}✗ MySQL连接失败,请检查root密码${NC}" + exit 1 +fi +echo -e "${GREEN}✓ MySQL连接成功${NC}" +echo "" + +echo "步骤 3/5: 创建数据库和用户" +read -sp "请输入新数据库用户的密码(按回车使用随机密码): " DB_PASSWORD +echo "" + +if [ -z "$DB_PASSWORD" ]; then + # 生成随机密码 + DB_PASSWORD=$(openssl rand -base64 16) + echo -e "${YELLOW}已生成随机密码: $DB_PASSWORD${NC}" + echo -e "${YELLOW}请务必保存此密码!${NC}" +fi +echo "" + +# 创建数据库 +mysql -uroot -p"$MYSQL_ROOT_PASSWORD" < "phpMyAdmin" +-- 2. 选择或创建数据库(建议数据库名:aigc_platform) +-- 3. 点击"导入" -> 选择此SQL文件 -> 执行 +-- 4. 或者使用命令行:mysql -u用户名 -p数据库名 < init_database.sql +-- +-- 数据库配置建议: +-- - 数据库名:aigc_platform +-- - 字符集:utf8mb4 +-- - 排序规则:utf8mb4_unicode_ci + +-- ============================================ +-- 管理员权限设置 +-- ============================================ +-- 将 984523799@qq.com 设置为管理员 +-- 如果该用户存在,则更新其角色为管理员 +UPDATE users +SET role = 'ROLE_ADMIN', + updated_at = CURRENT_TIMESTAMP +WHERE email = '984523799@qq.com'; + diff --git a/demo/database_baota_deploy/update_admin_user.sql b/demo/database_baota_deploy/update_admin_user.sql new file mode 100644 index 0000000..2799c55 --- /dev/null +++ b/demo/database_baota_deploy/update_admin_user.sql @@ -0,0 +1,13 @@ +-- 将 984523799@qq.com 设置为管理员 +-- 执行此脚本前请确保已连接到正确的数据库 + +-- 更新用户角色为管理员 +UPDATE users +SET role = 'ROLE_ADMIN', + updated_at = NOW() +WHERE email = '984523799@qq.com'; + +-- 验证更新结果 +SELECT id, username, email, role, points, is_active, created_at, updated_at +FROM users +WHERE email = '984523799@qq.com'; diff --git a/demo/database_baota_deploy/宝塔数据库部署指南.md b/demo/database_baota_deploy/宝塔数据库部署指南.md new file mode 100644 index 0000000..12c032b --- /dev/null +++ b/demo/database_baota_deploy/宝塔数据库部署指南.md @@ -0,0 +1,224 @@ +# 宝塔面板数据库部署指南 + +## 📋 部署清单 + +本部署包包含以下文件: +- `init_database.sql` - 完整的数据库初始化脚本(推荐使用) +- `update_admin_user.sql` - 管理员权限设置脚本 +- `数据库完整结构-宝塔导入.sql` - 备用完整结构文件 + +## 🚀 快速部署步骤 + +### 第一步:创建数据库 + +1. 登录宝塔面板 +2. 进入【数据库】菜单 +3. 点击【添加数据库】 +4. 填写以下信息: + - **数据库名**: `aigc_platform` + - **用户名**: `aigc_platform`(建议与数据库名相同) + - **密码**: 自动生成或自定义(请记录下来) + - **字符集**: `utf8mb4` + - **排序规则**: `utf8mb4_unicode_ci` +5. 点击【提交】创建数据库 + +### 第二步:导入数据库结构 + +#### 方式一:使用phpMyAdmin(推荐) + +1. 在宝塔面板【数据库】列表中,找到 `aigc_platform` 数据库 +2. 点击右侧的【管理】按钮,进入 phpMyAdmin +3. 点击顶部菜单【导入】 +4. 点击【选择文件】,选择 `init_database.sql` +5. 确保以下设置: + - 字符集:`utf8mb4` + - 格式:`SQL` +6. 点击页面底部【执行】按钮 +7. 等待导入完成,显示成功提示 + +#### 方式二:使用命令行 + +```bash +# SSH登录服务器后执行 +mysql -u aigc_platform -p aigc_platform < init_database.sql +# 输入数据库密码后回车 +``` + +### 第三步:设置管理员权限 + +导入完成后,需要设置管理员账号权限: + +#### 方式一:自动设置(已包含在init_database.sql中) + +如果使用 `init_database.sql` 导入,管理员权限已自动设置,无需额外操作。 + +#### 方式二:手动设置 + +如果需要手动设置或更改管理员,可以执行 `update_admin_user.sql`: + +1. 在 phpMyAdmin 中点击【SQL】标签 +2. 将 `update_admin_user.sql` 的内容粘贴到文本框 +3. 点击【执行】 + +或者直接在SQL中执行: + +```sql +UPDATE users +SET role = 'ROLE_ADMIN', + updated_at = CURRENT_TIMESTAMP +WHERE email = '984523799@qq.com'; +``` + +### 第四步:验证数据库 + +在 phpMyAdmin 或命令行中执行以下查询,验证表结构是否正确: + +```sql +-- 查看所有表 +SHOW TABLES; + +-- 验证管理员用户(如果已注册) +SELECT id, username, email, role, points, created_at +FROM users +WHERE email = '984523799@qq.com'; +``` + +应该看到以下表: +- `users` - 用户表 +- `payments` - 支付表 +- `orders` - 订单表 +- `order_items` - 订单项表 +- `text_to_video_tasks` - 文生视频任务表 +- `image_to_video_tasks` - 图生视频任务表 +- `storyboard_video_tasks` - 分镜视频任务表 +- `task_queue` - 任务队列表 +- `task_status` - 任务状态表 +- `user_works` - 用户作品表 +- `user_membership` - 会员表 +- `user_activity_stats` - 用户活动统计表 +- `failed_tasks_cleanup_log` - 失败任务清理日志表 + +## 📝 数据库配置信息 + +部署完成后,需要在应用配置文件中填写数据库信息: + +**文件位置**: `src/main/resources/application-prod.properties` + +```properties +# 数据库配置 +spring.datasource.url=jdbc:mysql://服务器IP:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true +spring.datasource.username=aigc_platform +spring.datasource.password=你的数据库密码 +spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver +``` + +**重要参数说明**: +- `服务器IP`: + - 如果应用与数据库在同一服务器:使用 `localhost` 或 `127.0.0.1` + - 如果数据库在其他服务器:使用数据库服务器的IP地址 +- `你的数据库密码`: 第一步创建数据库时设置的密码 + +## 🔒 安全建议 + +### 1. 数据库访问权限 + +- 在宝塔面板【数据库】中,点击数据库的【权限】 +- 如果应用和数据库在同一服务器,设置为【本地服务器】 +- 如果需要远程访问,设置【所有人】或指定IP,但要确保密码强度足够 + +### 2. 数据库密码强度 + +- 使用包含大小写字母、数字、特殊字符的强密码 +- 密码长度建议16位以上 + +### 3. 定期备份 + +在宝塔面板设置自动备份: +1. 进入【计划任务】 +2. 添加【备份数据库】任务 +3. 选择 `aigc_platform` 数据库 +4. 设置备份周期(建议每天备份) +5. 设置保留份数(建议保留7-30份) + +## ⚙️ 数据库性能优化 + +### 1. 连接池配置(已包含在application配置中) + +```properties +# 连接池配置(支持50-100人并发) +spring.datasource.hikari.maximum-pool-size=50 +spring.datasource.hikari.minimum-idle=10 +spring.datasource.hikari.idle-timeout=300000 +spring.datasource.hikari.max-lifetime=1200000 +spring.datasource.hikari.connection-timeout=30000 +``` + +### 2. MySQL配置优化 + +在宝塔面板【软件商店】->【MySQL】->【设置】->【配置修改】中调整: + +```ini +# 根据服务器内存调整(示例为4GB内存) +innodb_buffer_pool_size = 1G +max_connections = 500 +query_cache_size = 128M +tmp_table_size = 64M +max_heap_table_size = 64M +``` + +## 🐛 常见问题 + +### 1. 导入失败:字符集错误 + +**解决方案**: +- 确保数据库字符集为 `utf8mb4` +- 在导入时选择字符集为 `utf8mb4` + +### 2. 连接失败:Access denied + +**解决方案**: +- 检查数据库用户名和密码是否正确 +- 检查数据库访问权限设置 + +### 3. 表已存在错误 + +**解决方案**: +- 如果是重新部署,先删除旧数据库或清空所有表 +- 在 phpMyAdmin 中选择数据库,点击【操作】->【清空数据库】 + +### 4. 管理员权限未生效 + +**原因**:用户还未注册 + +**解决方案**: +1. 先在前端使用 `984523799@qq.com` 注册账号 +2. 注册完成后,数据库会自动将该用户设置为管理员(因为 `data.sql` 中有自动更新脚本) +3. 或者注册后手动执行 `update_admin_user.sql` + +## 📊 数据库监控 + +在宝塔面板可以监控数据库状态: +1. 进入【数据库】菜单 +2. 点击数据库名称右侧的【监控】 +3. 查看: + - 查询次数 + - 慢查询 + - 连接数 + - 缓存命中率 + +## 📞 技术支持 + +如遇到问题,请检查: +1. 宝塔面板【日志】中的 MySQL 错误日志 +2. 应用日志中的数据库连接错误 +3. 确保 MySQL 服务正在运行 + +--- + +**部署完成标志**: +- ✅ 数据库创建成功 +- ✅ 表结构导入成功(13个表) +- ✅ 管理员权限设置完成 +- ✅ 应用能够成功连接数据库 + +祝部署顺利!🎉 diff --git a/demo/database_baota_deploy/数据库完整结构-宝塔导入.sql b/demo/database_baota_deploy/数据库完整结构-宝塔导入.sql new file mode 100644 index 0000000..c091f70 --- /dev/null +++ b/demo/database_baota_deploy/数据库完整结构-宝塔导入.sql @@ -0,0 +1,370 @@ +-- ============================================ +-- AIGC平台数据库完整结构 +-- 适用于宝塔面板部署 +-- 创建时间:2025 +-- ============================================ + +-- 设置字符集 +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ============================================ +-- 1. 基础表结构(schema.sql) +-- ============================================ + +-- 用户表 +CREATE TABLE IF NOT EXISTS users ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + username VARCHAR(50) NOT NULL UNIQUE, + email VARCHAR(100) NOT NULL UNIQUE, + password_hash VARCHAR(100) NOT NULL, + role VARCHAR(30) NOT NULL DEFAULT 'ROLE_USER', + points INT NOT NULL DEFAULT 50, + frozen_points INT NOT NULL DEFAULT 0 COMMENT '冻结积分', + phone VARCHAR(20), + avatar VARCHAR(500), + nickname VARCHAR(100), + gender VARCHAR(10), + birthday DATE, + address TEXT, + is_active BOOLEAN NOT NULL DEFAULT TRUE, + last_login_at TIMESTAMP NULL, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + INDEX idx_email (email), + INDEX idx_username (username) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户表'; + +-- 支付表 +CREATE TABLE IF NOT EXISTS payments ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + order_id VARCHAR(50) NOT NULL UNIQUE, + amount DECIMAL(10,2) NOT NULL, + currency VARCHAR(3) NOT NULL DEFAULT 'CNY', + payment_method VARCHAR(20) NOT NULL, + status VARCHAR(20) NOT NULL DEFAULT 'PENDING', + description VARCHAR(500), + external_transaction_id VARCHAR(100), + callback_url VARCHAR(1000), + return_url VARCHAR(1000), + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + paid_at TIMESTAMP NULL, + user_id BIGINT, + FOREIGN KEY (user_id) REFERENCES users(id), + INDEX idx_order_id (order_id), + INDEX idx_user_id (user_id), + INDEX idx_status (status) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='支付表'; + +-- 订单表 +CREATE TABLE IF NOT EXISTS orders ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + order_number VARCHAR(50) NOT NULL UNIQUE, + total_amount DECIMAL(10,2) NOT NULL, + currency VARCHAR(3) NOT NULL DEFAULT 'CNY', + status VARCHAR(20) NOT NULL DEFAULT 'PENDING', + order_type VARCHAR(20) NOT NULL DEFAULT 'PRODUCT', + description VARCHAR(500), + notes TEXT, + shipping_address TEXT, + billing_address TEXT, + contact_phone VARCHAR(20), + contact_email VARCHAR(100), + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + paid_at TIMESTAMP NULL, + shipped_at TIMESTAMP NULL, + delivered_at TIMESTAMP NULL, + cancelled_at TIMESTAMP NULL, + user_id BIGINT NOT NULL, + FOREIGN KEY (user_id) REFERENCES users(id), + INDEX idx_order_number (order_number), + INDEX idx_user_id (user_id), + INDEX idx_status (status) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='订单表'; + +-- 订单项表 +CREATE TABLE IF NOT EXISTS order_items ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + product_name VARCHAR(100) NOT NULL, + product_description VARCHAR(500), + product_sku VARCHAR(200), + unit_price DECIMAL(10,2) NOT NULL, + quantity INT NOT NULL, + subtotal DECIMAL(10,2) NOT NULL, + product_image VARCHAR(100), + order_id BIGINT NOT NULL, + FOREIGN KEY (order_id) REFERENCES orders(id) ON DELETE CASCADE, + INDEX idx_order_id (order_id) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='订单项表'; + +-- 会员等级表 +CREATE TABLE IF NOT EXISTS membership_levels ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + name VARCHAR(50) NOT NULL UNIQUE, + display_name VARCHAR(50) NOT NULL, + description TEXT, + price DECIMAL(10,2) NOT NULL DEFAULT 0, + duration_days INT NOT NULL DEFAULT 30, + points_bonus INT NOT NULL DEFAULT 0, + features JSON, + is_active BOOLEAN NOT NULL DEFAULT TRUE, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + INDEX idx_name (name) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='会员等级表'; + +-- 用户会员信息表 +CREATE TABLE IF NOT EXISTS user_memberships ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + user_id BIGINT NOT NULL, + membership_level_id BIGINT NOT NULL, + start_date TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + end_date TIMESTAMP NOT NULL, + status VARCHAR(20) NOT NULL DEFAULT 'ACTIVE', + auto_renew BOOLEAN NOT NULL DEFAULT FALSE, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE, + FOREIGN KEY (membership_level_id) REFERENCES membership_levels(id), + UNIQUE KEY unique_active_membership (user_id, status), + INDEX idx_user_id (user_id), + INDEX idx_status (status) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户会员信息表'; + +-- 视频生成任务表(基础表) +CREATE TABLE IF NOT EXISTS video_tasks ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + task_id VARCHAR(100) NOT NULL UNIQUE, + user_id BIGINT NOT NULL, + task_type VARCHAR(50) NOT NULL, + title VARCHAR(200) NOT NULL, + description TEXT, + input_text TEXT, + input_image_url VARCHAR(500), + output_video_url VARCHAR(500), + status VARCHAR(20) NOT NULL DEFAULT 'PENDING', + progress INT NOT NULL DEFAULT 0, + error_message TEXT, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + completed_at TIMESTAMP NULL, + FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE, + INDEX idx_task_id (task_id), + INDEX idx_user_id (user_id), + INDEX idx_status (status) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='视频生成任务表'; + +-- 用户作品表(基础版) +CREATE TABLE IF NOT EXISTS user_works_base ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + user_id BIGINT NOT NULL, + title VARCHAR(200) NOT NULL, + description TEXT, + work_type VARCHAR(50) NOT NULL, + cover_image VARCHAR(500), + video_url VARCHAR(500), + tags VARCHAR(500), + is_public BOOLEAN NOT NULL DEFAULT TRUE, + view_count INT NOT NULL DEFAULT 0, + like_count INT NOT NULL DEFAULT 0, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE, + INDEX idx_user_id (user_id), + INDEX idx_work_type (work_type) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户作品表(基础版)'; + +-- 系统配置表 +CREATE TABLE IF NOT EXISTS system_configs ( + id BIGINT PRIMARY KEY AUTO_INCREMENT, + config_key VARCHAR(100) NOT NULL UNIQUE, + config_value TEXT, + description VARCHAR(500), + config_type VARCHAR(50) NOT NULL DEFAULT 'STRING', + is_public BOOLEAN NOT NULL DEFAULT FALSE, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + INDEX idx_config_key (config_key) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统配置表'; + +-- ============================================ +-- 2. 迁移表结构(Flyway Migration) +-- ============================================ + +-- V3: 任务队列表 +CREATE TABLE IF NOT EXISTS task_queue ( + id BIGINT AUTO_INCREMENT PRIMARY KEY, + username VARCHAR(100) NOT NULL COMMENT '用户名', + task_id VARCHAR(50) NOT NULL UNIQUE COMMENT '任务ID', + task_type ENUM('TEXT_TO_VIDEO', 'IMAGE_TO_VIDEO') NOT NULL COMMENT '任务类型', + status ENUM('PENDING', 'PROCESSING', 'COMPLETED', 'FAILED', 'CANCELLED', 'TIMEOUT') NOT NULL DEFAULT 'PENDING' COMMENT '队列状态', + priority INT NOT NULL DEFAULT 0 COMMENT '优先级,数字越小优先级越高', + real_task_id VARCHAR(100) COMMENT '外部API返回的真实任务ID', + last_check_time DATETIME COMMENT '最后一次检查时间', + check_count INT NOT NULL DEFAULT 0 COMMENT '检查次数', + max_check_count INT NOT NULL DEFAULT 30 COMMENT '最大检查次数(30次 * 2分钟 = 60分钟)', + error_message TEXT COMMENT '错误信息', + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + completed_at DATETIME COMMENT '完成时间', + INDEX idx_username_status (username, status), + INDEX idx_status_priority (status, priority), + INDEX idx_last_check_time (last_check_time), + INDEX idx_created_at (created_at) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='任务队列表'; + +-- V4: 积分冻结记录表 +CREATE TABLE IF NOT EXISTS points_freeze_records ( + id BIGINT AUTO_INCREMENT PRIMARY KEY, + username VARCHAR(100) NOT NULL COMMENT '用户名', + task_id VARCHAR(50) NOT NULL UNIQUE COMMENT '任务ID', + task_type ENUM('TEXT_TO_VIDEO', 'IMAGE_TO_VIDEO') NOT NULL COMMENT '任务类型', + freeze_points INT NOT NULL COMMENT '冻结的积分数量', + status ENUM('FROZEN', 'DEDUCTED', 'RETURNED', 'EXPIRED') NOT NULL DEFAULT 'FROZEN' COMMENT '冻结状态', + freeze_reason VARCHAR(200) COMMENT '冻结原因', + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + completed_at DATETIME COMMENT '完成时间', + INDEX idx_username_status (username, status), + INDEX idx_task_id (task_id), + INDEX idx_created_at (created_at), + INDEX idx_status (status) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='积分冻结记录表'; + +-- V5: 用户作品表(详细版) +CREATE TABLE IF NOT EXISTS user_works ( + id BIGINT AUTO_INCREMENT PRIMARY KEY, + username VARCHAR(100) NOT NULL COMMENT '用户名', + task_id VARCHAR(50) NOT NULL UNIQUE COMMENT '任务ID', + work_type ENUM('TEXT_TO_VIDEO', 'IMAGE_TO_VIDEO') NOT NULL COMMENT '作品类型', + title VARCHAR(200) COMMENT '作品标题', + description TEXT COMMENT '作品描述', + prompt TEXT COMMENT '生成提示词', + result_url VARCHAR(500) COMMENT '结果视频URL', + thumbnail_url VARCHAR(500) COMMENT '缩略图URL', + duration VARCHAR(10) COMMENT '视频时长', + aspect_ratio VARCHAR(10) COMMENT '宽高比', + quality VARCHAR(20) COMMENT '画质', + file_size VARCHAR(20) COMMENT '文件大小', + points_cost INT NOT NULL DEFAULT 0 COMMENT '消耗积分', + status ENUM('PROCESSING', 'COMPLETED', 'FAILED', 'DELETED') NOT NULL DEFAULT 'PROCESSING' COMMENT '作品状态', + is_public BOOLEAN NOT NULL DEFAULT FALSE COMMENT '是否公开', + view_count INT NOT NULL DEFAULT 0 COMMENT '浏览次数', + like_count INT NOT NULL DEFAULT 0 COMMENT '点赞次数', + download_count INT NOT NULL DEFAULT 0 COMMENT '下载次数', + tags VARCHAR(500) COMMENT '标签', + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + completed_at DATETIME COMMENT '完成时间', + INDEX idx_username_status (username, status), + INDEX idx_task_id (task_id), + INDEX idx_work_type (work_type), + INDEX idx_is_public_status (is_public, status), + INDEX idx_created_at (created_at), + INDEX idx_view_count (view_count), + INDEX idx_like_count (like_count), + INDEX idx_tags (tags), + INDEX idx_prompt (prompt(100)) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户作品表'; + +-- V6: 任务状态表 +CREATE TABLE IF NOT EXISTS task_status ( + id BIGINT AUTO_INCREMENT PRIMARY KEY, + task_id VARCHAR(255) NOT NULL COMMENT '任务ID', + username VARCHAR(255) NOT NULL COMMENT '用户名', + task_type VARCHAR(50) NOT NULL COMMENT '任务类型', + status VARCHAR(50) NOT NULL DEFAULT 'PENDING' COMMENT '任务状态', + progress INT DEFAULT 0 COMMENT '进度百分比', + result_url TEXT COMMENT '结果URL', + error_message TEXT COMMENT '错误信息', + external_task_id VARCHAR(255) COMMENT '外部任务ID', + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + completed_at TIMESTAMP NULL COMMENT '完成时间', + last_polled_at TIMESTAMP NULL COMMENT '最后轮询时间', + poll_count INT DEFAULT 0 COMMENT '轮询次数', + max_polls INT DEFAULT 60 COMMENT '最大轮询次数(2小时)', + INDEX idx_task_id (task_id), + INDEX idx_username (username), + INDEX idx_status (status), + INDEX idx_created_at (created_at), + INDEX idx_last_polled (last_polled_at) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='任务状态表'; + +-- V7: 任务清理表 +-- 成功任务归档表 +CREATE TABLE IF NOT EXISTS completed_tasks_archive ( + id BIGINT AUTO_INCREMENT PRIMARY KEY, + task_id VARCHAR(255) NOT NULL, + username VARCHAR(255) NOT NULL, + task_type VARCHAR(50) NOT NULL, + prompt TEXT, + aspect_ratio VARCHAR(20), + duration INT, + hd_mode BOOLEAN DEFAULT FALSE, + result_url TEXT, + real_task_id VARCHAR(255), + progress INT DEFAULT 100, + created_at TIMESTAMP NOT NULL, + completed_at TIMESTAMP NOT NULL, + archived_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + points_cost INT DEFAULT 0, + INDEX idx_username (username), + INDEX idx_task_type (task_type), + INDEX idx_created_at (created_at), + INDEX idx_completed_at (completed_at), + INDEX idx_archived_at (archived_at) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='成功任务归档表'; + +-- 失败任务清理日志表 +CREATE TABLE IF NOT EXISTS failed_tasks_cleanup_log ( + id BIGINT AUTO_INCREMENT PRIMARY KEY, + task_id VARCHAR(255) NOT NULL, + username VARCHAR(255) NOT NULL, + task_type VARCHAR(50) NOT NULL, + error_message TEXT, + created_at TIMESTAMP NOT NULL, + failed_at TIMESTAMP NOT NULL, + cleaned_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + INDEX idx_username (username), + INDEX idx_task_type (task_type), + INDEX idx_cleaned_at (cleaned_at) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='失败任务清理日志表'; + +-- V8: 分镜视频任务表 +CREATE TABLE IF NOT EXISTS storyboard_video_tasks ( + id BIGINT AUTO_INCREMENT PRIMARY KEY, + task_id VARCHAR(50) NOT NULL UNIQUE, + username VARCHAR(100) NOT NULL, + prompt TEXT, + image_url VARCHAR(500), + aspect_ratio VARCHAR(10) NOT NULL, + hd_mode BOOLEAN NOT NULL DEFAULT FALSE, + status VARCHAR(20) NOT NULL, + progress INT NOT NULL DEFAULT 0, + result_url VARCHAR(500), + real_task_id VARCHAR(255), + error_message TEXT, + cost_points INT NOT NULL DEFAULT 0, + created_at TIMESTAMP NOT NULL, + updated_at TIMESTAMP NOT NULL, + completed_at TIMESTAMP, + INDEX idx_username (username), + INDEX idx_status (status), + INDEX idx_task_id (task_id) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='分镜视频任务表'; + +-- ============================================ +-- 完成 +-- ============================================ + +SET FOREIGN_KEY_CHECKS = 1; + +-- 显示所有表 +SHOW TABLES; + + + + diff --git a/demo/database_baota_deploy/部署检查清单.md b/demo/database_baota_deploy/部署检查清单.md new file mode 100644 index 0000000..2805718 --- /dev/null +++ b/demo/database_baota_deploy/部署检查清单.md @@ -0,0 +1,227 @@ +# 宝塔数据库部署检查清单 + +部署日期: _______________ +操作人员: _______________ + +## 📋 部署前准备 + +### 1. 服务器环境检查 +- [ ] 服务器已安装宝塔面板(版本: ______) +- [ ] MySQL/MariaDB已安装(版本: ______) +- [ ] MySQL服务运行正常 +- [ ] 服务器内存 >= 2GB(推荐4GB+) +- [ ] 磁盘空间 >= 10GB + +### 2. 部署包确认 +- [ ] 已下载 `database_baota_deploy.zip` +- [ ] 已解压到服务器 +- [ ] 包含以下文件: + - [ ] init_database.sql + - [ ] update_admin_user.sql + - [ ] 数据库完整结构-宝塔导入.sql + - [ ] 宝塔数据库部署指南.md + - [ ] README.md + - [ ] deploy_database.sh + +## 🚀 部署步骤 + +### 第一步:创建数据库 +- [ ] 登录宝塔面板 +- [ ] 进入【数据库】菜单 +- [ ] 点击【添加数据库】 +- [ ] 数据库名: `aigc_platform` +- [ ] 用户名: `aigc_platform` +- [ ] 密码: ___________________________(请记录) +- [ ] 字符集: `utf8mb4` +- [ ] 排序规则: `utf8mb4_unicode_ci` +- [ ] 创建成功 + +### 第二步:导入数据库 +- [ ] 点击数据库【管理】按钮 +- [ ] 进入phpMyAdmin +- [ ] 点击【导入】标签 +- [ ] 选择 `init_database.sql` 文件 +- [ ] 字符集选择 `utf8mb4` +- [ ] 点击【执行】 +- [ ] 导入成功(显示成功消息) + +### 第三步:验证数据库 +- [ ] 在phpMyAdmin中点击左侧数据库名 +- [ ] 查看表列表 +- [ ] 确认包含13个表: + - [ ] users + - [ ] payments + - [ ] orders + - [ ] order_items + - [ ] text_to_video_tasks + - [ ] image_to_video_tasks + - [ ] storyboard_video_tasks + - [ ] task_queue + - [ ] task_status + - [ ] user_works + - [ ] user_membership + - [ ] user_activity_stats + - [ ] failed_tasks_cleanup_log + +### 第四步:配置管理员 +- [ ] 管理员邮箱: `984523799@qq.com` +- [ ] 已在 `init_database.sql` 中自动配置 +- [ ] 或手动执行 `update_admin_user.sql` + +## ⚙️ 应用配置 + +### 更新配置文件 +- [ ] 找到文件: `src/main/resources/application-prod.properties` +- [ ] 更新以下配置: + +```properties +spring.datasource.url=jdbc:mysql://localhost:3306/aigc_platform?... +spring.datasource.username=aigc_platform +spring.datasource.password=你的数据库密码 +``` + +配置信息记录: +``` +数据库地址: _______________________________ +数据库端口: 3306 +数据库名: aigc_platform +用户名: aigc_platform +密码: _______________________________ +``` + +## 🔒 安全配置 + +### 数据库访问权限 +- [ ] 设置访问权限(本地服务器/所有人/指定IP) +- [ ] 权限类型: _______________________ + +### 防火墙配置(如需远程连接) +- [ ] 开放3306端口 +- [ ] 或使用SSH隧道 + +### 备份配置 +- [ ] 在宝塔面板设置自动备份 +- [ ] 备份周期: 每天 / 每周(选择一个) +- [ ] 保留份数: _______ 份 +- [ ] 备份位置: _______________________ + +## ✅ 功能测试 + +### 数据库连接测试 +- [ ] 使用命令行测试连接: + ```bash + mysql -uaigc_platform -p aigc_platform + ``` +- [ ] 连接成功 + +### 表查询测试 +- [ ] 执行查询: + ```sql + SHOW TABLES; + SELECT COUNT(*) FROM users; + ``` +- [ ] 查询成功 + +### 管理员账号验证(注册后执行) +- [ ] 使用 `984523799@qq.com` 注册账号 +- [ ] 执行查询验证角色: + ```sql + SELECT id, username, email, role FROM users WHERE email = '984523799@qq.com'; + ``` +- [ ] role = 'ROLE_ADMIN' ✓ + +### 应用连接测试 +- [ ] 启动Spring Boot应用 +- [ ] 查看日志,确认数据库连接成功 +- [ ] 无数据库连接错误 + +## 📊 性能优化(可选) + +### MySQL配置优化 +- [ ] 调整 `innodb_buffer_pool_size` +- [ ] 调整 `max_connections` +- [ ] 调整 `query_cache_size` + +### 连接池配置 +- [ ] 已配置HikariCP连接池 +- [ ] maximum-pool-size: 50 +- [ ] minimum-idle: 10 + +## 🐛 问题记录 + +遇到的问题及解决方案: + +| 问题描述 | 解决方案 | 解决时间 | +|---------|---------|---------| +| | | | +| | | | +| | | | + +## 📝 部署总结 + +### 部署结果 +- [ ] 部署成功 ✅ +- [ ] 部署失败 ❌(原因: _____________) + +### 部署时间记录 +- 开始时间: _______________ +- 结束时间: _______________ +- 总耗时: _______________ + +### 资源使用 +- 数据库大小: _______ MB +- 表数量: 13 +- 索引数量: _______ + +### 后续工作 +- [ ] 监控数据库性能 +- [ ] 设置定期备份 +- [ ] 配置数据库监控告警 +- [ ] 文档归档 + +## 📞 联系信息 + +### 技术支持 +- 部署文档: README.md +- 详细指南: 宝塔数据库部署指南.md + +### 应急联系 +- 运维人员: _______________ +- 联系电话: _______________ +- 备用联系: _______________ + +--- + +**部署负责人签名**: _______________ +**审核人签名**: _______________ +**日期**: _______________ + +--- + +## 附录:常用命令 + +```bash +# 查看MySQL状态 +systemctl status mysql + +# 重启MySQL +systemctl restart mysql + +# 查看数据库列表 +mysql -uroot -p -e "SHOW DATABASES;" + +# 备份数据库 +mysqldump -uaigc_platform -p aigc_platform > backup.sql + +# 恢复数据库 +mysql -uaigc_platform -p aigc_platform < backup.sql + +# 查看表大小 +SELECT table_name, ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size (MB)" +FROM information_schema.TABLES +WHERE table_schema = 'aigc_platform' +ORDER BY (data_length + index_length) DESC; +``` + +**部署清单版本**: 1.0 +**更新日期**: 2025-11-10 diff --git a/demo/database_baota_deploy_.zip b/demo/database_baota_deploy_.zip new file mode 100644 index 0000000000000000000000000000000000000000..4ecda43c40e1303b7995873e19340b9fc736d1d7 GIT binary patch literal 19353 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 + $composeVersion = docker-compose --version 2>&1 + Write-Host "✅ Docker 环境: $dockerVersion" -ForegroundColor Green + Write-Host "✅ Docker Compose: $composeVersion" -ForegroundColor Green +} catch { + Write-Host "❌ Docker 未正确安装或启动" -ForegroundColor Red + Write-Host " 请确保已安装 Docker Desktop 并已启动" -ForegroundColor Yellow exit 1 } -Write-Host "✅ 前端构建完成" -ForegroundColor Green +# 检查前端是否已构建 +if (-not (Test-Path "frontend/dist")) { + Write-Host "`n⚠️ 前端未构建,开始构建前端..." -ForegroundColor Yellow + Push-Location frontend + try { + if (Test-Path "package.json") { + Write-Host " 安装依赖..." -ForegroundColor Cyan + npm install + Write-Host " 构建生产版本..." -ForegroundColor Cyan + npm run build + Write-Host "✅ 前端构建完成" -ForegroundColor Green + } else { + Write-Host "⚠️ 未找到 package.json,跳过前端构建" -ForegroundColor Yellow + } + } catch { + Write-Host "❌ 前端构建失败: $($_.Exception.Message)" -ForegroundColor Red + Write-Host " 可以稍后手动构建: cd frontend && npm install && npm run build" -ForegroundColor Yellow + } finally { + Pop-Location + } +} else { + Write-Host "✅ 前端已构建" -ForegroundColor Green +} -# 停止现有容器 -Write-Host "🛑 停止现有容器..." -ForegroundColor Yellow -docker-compose down +# 停止现有服务 +Write-Host "`n🛑 停止现有服务..." -ForegroundColor Yellow +docker-compose down 2>&1 | Out-Null -# 构建并启动服务 -Write-Host "🔨 构建并启动服务..." -ForegroundColor Yellow -docker-compose up -d --build +# 构建镜像 +Write-Host "`n📦 构建 Docker 镜像..." -ForegroundColor Cyan +Write-Host " 这可能需要几分钟时间,请耐心等待..." -ForegroundColor Gray +$buildResult = docker-compose build --no-cache 2>&1 +if ($LASTEXITCODE -ne 0) { + Write-Host "❌ 镜像构建失败" -ForegroundColor Red + Write-Host $buildResult -ForegroundColor Red + exit 1 +} +Write-Host "✅ 镜像构建完成" -ForegroundColor Green + +# 启动服务 +Write-Host "`n🐳 启动所有服务..." -ForegroundColor Cyan +docker-compose up -d +if ($LASTEXITCODE -ne 0) { + Write-Host "❌ 服务启动失败" -ForegroundColor Red + exit 1 +} # 等待服务启动 -Write-Host "⏳ 等待服务启动..." -ForegroundColor Yellow -Start-Sleep -Seconds 10 +Write-Host "`n⏳ 等待服务启动(60秒)..." -ForegroundColor Yellow +Write-Host " 后端服务需要时间连接数据库并初始化..." -ForegroundColor Gray +Start-Sleep -Seconds 60 # 检查服务状态 -Write-Host "📊 检查服务状态..." -ForegroundColor Yellow +Write-Host "`n🔍 检查服务状态..." -ForegroundColor Cyan docker-compose ps -# 测试健康检查 -Write-Host "🏥 测试健康检查..." -ForegroundColor Yellow -try { - $response = Invoke-WebRequest -Uri "http://localhost/health" -TimeoutSec 5 -UseBasicParsing - if ($response.StatusCode -eq 200) { - Write-Host "✅ Nginx 健康检查通过" -ForegroundColor Green - } -} catch { - Write-Host "⚠️ Nginx 健康检查失败" -ForegroundColor Yellow +# 健康检查 +Write-Host "`n🏥 服务健康检查..." -ForegroundColor Cyan + +# 检查 MySQL 服务 +Write-Host " 检查 MySQL..." -ForegroundColor Gray +$mysqlStatus = docker-compose ps mysql 2>&1 | Select-String "Up" +if ($mysqlStatus) { + Write-Host " ✅ MySQL 服务运行中" -ForegroundColor Green +} else { + Write-Host " ⚠️ MySQL 服务可能未正常启动" -ForegroundColor Yellow } -Write-Host "" -Write-Host "✅ 部署完成!" -ForegroundColor Green -Write-Host "🌐 前端地址: http://localhost" -ForegroundColor Cyan -Write-Host "🔗 API 地址: http://localhost/api" -ForegroundColor Cyan -Write-Host "" -Write-Host "查看日志: docker-compose logs -f" -ForegroundColor Gray -Write-Host "停止服务: docker-compose down" -ForegroundColor Gray +# 检查 Redis 服务 +Write-Host " 检查 Redis..." -ForegroundColor Gray +$redisStatus = docker-compose ps redis 2>&1 | Select-String "Up" +if ($redisStatus) { + Write-Host " ✅ Redis 服务运行中" -ForegroundColor Green +} else { + Write-Host " ⚠️ Redis 服务可能未正常启动" -ForegroundColor Yellow +} +# 检查后端服务 +Write-Host " 检查后端服务..." -ForegroundColor Gray +try { + # 检查后端服务是否响应 + $backendTest = Invoke-WebRequest -Uri "http://localhost:8080" -TimeoutSec 5 -ErrorAction SilentlyContinue + if ($backendTest.StatusCode -eq 200 -or $backendTest.StatusCode -eq 404 -or $backendTest.StatusCode -eq 302) { + Write-Host " ✅ 后端服务可访问 (状态码: $($backendTest.StatusCode))" -ForegroundColor Green + } +} catch { + # 尝试检查API端点 + try { + $apiTest = Invoke-WebRequest -Uri "http://localhost:8080/api" -TimeoutSec 5 -ErrorAction SilentlyContinue + Write-Host " ✅ 后端API可访问" -ForegroundColor Green + } catch { + Write-Host " ⚠️ 后端服务可能还在启动中,请稍后检查" -ForegroundColor Yellow + Write-Host " 查看日志: docker-compose logs backend" -ForegroundColor Gray + Write-Host " 提示: 首次启动可能需要1-2分钟" -ForegroundColor Gray + } +} + +# 检查前端服务 +Write-Host " 检查前端服务..." -ForegroundColor Gray +try { + $frontendResponse = Invoke-WebRequest -Uri "http://localhost" -TimeoutSec 5 -ErrorAction SilentlyContinue + if ($frontendResponse.StatusCode -eq 200) { + Write-Host " ✅ 前端服务运行正常" -ForegroundColor Green + } +} catch { + Write-Host " ⚠️ 前端服务检查失败: $($_.Exception.Message)" -ForegroundColor Yellow + Write-Host " 查看日志: docker-compose logs frontend" -ForegroundColor Gray +} + +# 显示访问信息 +Write-Host "`n" + ("=" * 60) -ForegroundColor Green +Write-Host "🎉 部署完成!" -ForegroundColor Green +Write-Host "" +Write-Host "📍 访问地址:" -ForegroundColor Cyan +Write-Host " 前端: http://localhost" -ForegroundColor White +Write-Host " 后端API: http://localhost:8080" -ForegroundColor White +Write-Host " API文档: http://localhost:8080/api" -ForegroundColor White +Write-Host "" +Write-Host "📍 数据库连接信息:" -ForegroundColor Cyan +Write-Host " 地址: localhost:3306" -ForegroundColor White +Write-Host " 用户: aigc_user" -ForegroundColor White +Write-Host " 密码: aigc_password" -ForegroundColor White +Write-Host " 数据库: aigc_platform" -ForegroundColor White +Write-Host "" +Write-Host "📍 Redis:" -ForegroundColor Cyan +Write-Host " 地址: localhost:6379" -ForegroundColor White +Write-Host "" +Write-Host "📋 常用命令:" -ForegroundColor Yellow +Write-Host " 查看所有服务日志: docker-compose logs -f" -ForegroundColor Gray +Write-Host " 查看后端日志: docker-compose logs -f backend" -ForegroundColor Gray +Write-Host " 查看前端日志: docker-compose logs -f frontend" -ForegroundColor Gray +Write-Host " 查看服务状态: docker-compose ps" -ForegroundColor Gray +Write-Host " 停止服务: docker-compose down" -ForegroundColor Gray +Write-Host " 停止并删除数据: docker-compose down -v" -ForegroundColor Gray +Write-Host " 重新部署: .\deploy.ps1" -ForegroundColor Gray +Write-Host "" +Write-Host "⚠️ 注意事项:" -ForegroundColor Yellow +Write-Host " 1. 首次启动可能需要更长时间,请耐心等待" -ForegroundColor Gray +Write-Host " 2. 如果服务未正常启动,请查看日志排查问题" -ForegroundColor Gray +Write-Host " 3. 确保端口 80、8080、3306、6379 未被占用" -ForegroundColor Gray +Write-Host ("=" * 60) -ForegroundColor Green diff --git a/demo/deploy_baota/API_DOCUMENTATION.md b/demo/deploy_baota/API_DOCUMENTATION.md new file mode 100644 index 0000000..d0d0ca1 --- /dev/null +++ b/demo/deploy_baota/API_DOCUMENTATION.md @@ -0,0 +1,80 @@ +# API 接口文档使用说明 + +## 访问地址 + +启动应用后,可以通过以下地址访问 API 文档: + +- **Swagger UI 界面**: http://localhost:8080/swagger-ui.html +- **API 文档 JSON**: http://localhost:8080/v3/api-docs +- **所有API分组**: http://localhost:8080/v3/api-docs/all + +## 环境地址 + +根据部署环境,访问地址会有所不同: + +- **本地开发**: http://localhost:8080/swagger-ui.html +- **内网环境**: http://172.22.0.1:8080/swagger-ui.html +- **生产环境**: https://vionow.com/swagger-ui.html + +## API 分组 + +文档按功能模块分为以下分组: + +1. **所有API (all)** - 查看所有接口 +2. **认证授权 (auth)** - 用户登录、注册、验证码等 +3. **用户作品 (user-works)** - 用户作品管理 +4. **视频生成 (video-generation)** - 文生视频、图生视频、分镜视频 +5. **支付管理 (payment)** - 订单、支付相关接口 +6. **会员管理 (member)** - 会员订阅、会员管理 +7. **积分系统 (points)** - 积分相关接口 +8. **任务管理 (tasks)** - 任务队列、任务状态 +9. **管理后台 (admin)** - 管理员功能、数据分析 +10. **系统设置 (settings)** - 系统配置、API密钥管理 +11. **公共接口 (public)** - 无需认证的公共接口 + +## 使用 JWT 认证 + +大部分接口需要 JWT 认证,使用步骤如下: + +1. 在 Swagger UI 页面右上角点击 **"Authorize"** 按钮 +2. 在弹出框中输入 JWT Token(格式:`Bearer {token}` 或直接输入 token) +3. 点击 **"Authorize"** 确认 +4. 之后所有请求都会自动携带认证信息 + +### 获取 Token + +1. 调用 `/api/verification/email/send` 发送邮箱验证码 +2. 调用 `/api/auth/login/email` 使用邮箱和验证码登录 +3. 从响应中获取 `token` 字段 +4. 在 Swagger UI 中使用该 token 进行认证 + +## 功能特性 + +- ✅ 自动生成 API 文档 +- ✅ 在线测试接口 +- ✅ 支持 JWT 认证 +- ✅ API 分组管理 +- ✅ 请求/响应示例 +- ✅ 参数说明和验证规则 + +## 注意事项 + +1. **生产环境**: 建议在生产环境中限制 Swagger UI 的访问,或完全禁用 +2. **认证**: 大部分接口需要 JWT Token,请先登录获取 Token +3. **权限**: 部分接口需要管理员权限,普通用户无法访问 +4. **跨域**: 如果遇到跨域问题,请检查 CORS 配置 + +## 禁用 Swagger UI(生产环境) + +如果需要在生产环境禁用 Swagger UI,可以在 `application-prod.properties` 中添加: + +```properties +springdoc.swagger-ui.enabled=false +``` + +或者通过环境变量: + +```bash +export SPRINGDOC_SWAGGER_UI_ENABLED=false +``` + diff --git a/demo/deploy_baota/README.txt b/demo/deploy_baota/README.txt new file mode 100644 index 0000000..b852b5e --- /dev/null +++ b/demo/deploy_baota/README.txt @@ -0,0 +1,74 @@ +# 宝塔面板部署说明 + +## 文件结构 +- backend/ - 后端部署文件 + - app.jar - Spring Boot应用JAR包 + - start.sh - 启动脚本 + - application-prod.properties.template - 配置文件模板 +- frontend/ - 前端部署文件 + - dist/ - 前端构建产物 + - nginx.conf - Nginx配置示例 + +## 部署步骤 + +### 1. 数据库部署 +1. 解压 database_baota_*.zip +2. 登录宝塔面板 -> 数据库 -> phpMyAdmin +3. 创建数据库:aigc_platform +4. 导入 init_database.sql + +### 2. 后端部署 +1. 上传 backend/ 目录到服务器(如:/www/wwwroot/aigc-backend) +2. 修改配置文件: + - 复制 application-prod.properties.template 为 application-prod.properties + - 修改数据库连接信息(默认:172.22.0.2:3306) + - 修改JWT密钥、AI API密钥等 + - 注意:数据库地址已配置为 172.22.0.2,请根据实际环境调整 +3. 安装Java 21(如未安装): + - 宝塔面板 -> 软件商店 -> 安装 Java项目管理器 + - 或手动安装:yum install java-21-openjdk +4. 设置启动脚本权限: + chmod +x /www/wwwroot/aigc-backend/start.sh +5. 启动后端: + cd /www/wwwroot/aigc-backend + ./start.sh start +6. 检查日志: + tail -f logs/app.log + +### 3. 前端部署 +1. 上传 frontend/dist/ 目录内容到网站根目录(如:/www/wwwroot/your-domain.com) +2. 配置Nginx: + - 宝塔面板 -> 网站 -> 选择网站 -> 设置 -> 配置文件 + - 参考 frontend/nginx.conf 配置反向代理 + - 修改 server_name 为实际域名 + - 修改 root 为实际网站目录 + - 注意:后端代理地址已配置为 172.22.0.1:8080,请根据实际环境调整 +3. 重启Nginx: + systemctl restart nginx + +### 4. 防火墙设置 +- 开放端口:80(HTTP)、443(HTTPS)、8080(后端,如需要外网访问) +- 宝塔面板 -> 安全 -> 添加端口规则 + +### 5. SSL证书(推荐) +- 宝塔面板 -> 网站 -> SSL -> Let's Encrypt免费证书 + +## 常用命令 + +### 后端管理 +- 启动:./start.sh start +- 停止:./start.sh stop +- 重启:./start.sh restart +- 状态:./start.sh status +- 查看日志:tail -f logs/app.log + +### 前端管理 +- 重启Nginx:systemctl restart nginx +- 查看Nginx日志:tail -f /www/wwwroot/logs/your-domain.com.log + +## 注意事项 +1. 确保Java版本为21 +2. 确保MySQL版本为8.0+ +3. 确保服务器内存至少4GB(推荐8GB) +4. 配置文件中的敏感信息请妥善保管 +5. 定期备份数据库和上传文件 diff --git a/demo/deploy_baota/ROUTE_ANALYSIS.md b/demo/deploy_baota/ROUTE_ANALYSIS.md new file mode 100644 index 0000000..6416b5b --- /dev/null +++ b/demo/deploy_baota/ROUTE_ANALYSIS.md @@ -0,0 +1,312 @@ +# 项目路由分析报告 + +## 统一前缀路由 + +### API 路由前缀 +**主要前缀:`/api/`** + +所有后端 REST API 接口统一使用 `/api/` 作为前缀。 + +## 详细路由分类 + +### 1. REST API 路由(`/api/`) + +#### 认证授权模块 +- `/api/auth/**` - 用户认证(登录、注册) +- `/api/verification/**` - 验证码服务 +- `/api/email/**` - 邮件服务 +- `/api/tencent/**` - 腾讯云服务集成 + +#### 视频生成模块 +- `/api/text-to-video/**` - 文生视频 +- `/api/image-to-video/**` - 图生视频 +- `/api/storyboard-video/**` - 分镜视频 + +#### 用户作品模块 +- `/api/works/**` - 用户作品管理 + +#### 支付订单模块 +- `/api/payments/**` - 支付相关 +- `/api/payments/alipay/**` - 支付宝支付 +- `/api/orders/**` - 订单管理 + +#### 会员积分模块 +- `/api/members/**` - 会员管理 +- `/api/points/**` - 积分系统 + +#### 任务管理模块 +- `/api/task-queue/**` - 任务队列 +- `/api/task-status/**` - 任务状态 +- `/api/cleanup/**` - 任务清理 + +#### 管理后台模块 +- `/api/admin/**` - 管理员接口 +- `/api/dashboard/**` - 数据仪表盘 +- `/api/analytics/**` - 数据分析 + +#### 系统设置模块 +- `/api/api-key/**` - API 密钥管理 +- `/api/prompt/**` - 提示词优化 + +#### 测试诊断模块 +- `/api/test/**` - 测试接口 +- `/api/diagnostic/**` - 诊断接口 +- `/api/polling/**` - 轮询测试 +- `/api/polling-diagnostic/**` - 轮询诊断 +- `/api/monitor/**` - 监控接口 + +#### 公共接口 +- `/api/public/**` - 公共API(无需认证) +- `/api/health/**` - 健康检查接口 + +### 2. 页面路由(非 API) + +#### 用户页面 +- `/login` - 登录页面 +- `/register` - 注册页面 +- `/payment/**` - 支付页面 +- `/orders/**` - 订单页面 + +#### 管理员页面 +- `/settings/**` - 系统设置页面(管理员) +- `/users/**` - 用户管理页面(管理员) + +#### 开发工具 +- `/h2-console/**` - H2 数据库控制台(开发环境) + +### 3. API 文档路由 + +- `/swagger-ui.html` - Swagger UI 主页 +- `/swagger-ui/**` - Swagger UI 资源 +- `/v3/api-docs/**` - OpenAPI 文档 JSON +- `/swagger-resources/**` - Swagger 资源 +- `/webjars/**` - Web 资源库 + +### 4. 静态资源路由 + +- `/css/**` - CSS 样式文件 +- `/js/**` - JavaScript 文件 +- `/uploads/**` - 上传文件 + +## 路由代理配置 + +### Nginx 代理配置 + +#### 1. API 代理(推荐配置) + +```nginx +# API 代理到后端 +location /api/ { + proxy_pass http://172.22.0.1:8080/; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + # 超时设置(视频生成可能需要较长时间) + proxy_connect_timeout 30s; + proxy_send_timeout 900s; + proxy_read_timeout 900s; + + # 支持大文件上传 + client_max_body_size 600M; +} +``` + +#### 2. Swagger UI 代理(可选,用于生产环境) + +```nginx +# API 文档代理 +location ~ ^/(swagger-ui|v3/api-docs|swagger-resources|webjars) { + proxy_pass http://172.22.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; +} +``` + +#### 3. 上传文件代理 + +```nginx +# 上传文件代理 +location /uploads/ { + proxy_pass http://172.22.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + # 缓存设置 + expires 7d; + add_header Cache-Control "public, immutable"; +} +``` + +#### 4. WebSocket 支持(如果需要) + +```nginx +location /ws/ { + proxy_pass http://172.22.0.1:8080; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; +} +``` + +### Apache 代理配置(如果使用 Apache) + +```apache +# 启用代理模块 +LoadModule proxy_module modules/mod_proxy.so +LoadModule proxy_http_module modules/mod_proxy_http.so + +# API 代理 +ProxyPass /api/ http://172.22.0.1:8080/ +ProxyPassReverse /api/ http://172.22.0.1:8080/ + +# Swagger UI 代理 +ProxyPass /swagger-ui/ http://172.22.0.1:8080/swagger-ui/ +ProxyPassReverse /swagger-ui/ http://172.22.0.1:8080/swagger-ui/ + +ProxyPass /v3/api-docs/ http://172.22.0.1:8080/v3/api-docs/ +ProxyPassReverse /v3/api-docs/ http://172.22.0.1:8080/v3/api-docs/ +``` + +## 权限配置 + +### 无需认证(公开访问) + +``` +/login +/register +/api/public/** +/api/auth/** +/api/verification/** +/api/email/** +/api/tencent/** +/api/test/** +/api/orders/stats +/api/payments/alipay/notify +/api/payments/alipay/return +/swagger-ui/** +/v3/api-docs/** +``` + +### 需要认证 + +``` +/api/orders/**(除 /api/orders/stats) +/api/payments/**(除支付宝回调) +/api/image-to-video/** +/api/text-to-video/** +/api/works/** +/api/points/** +/api/members/** +``` + +### 需要管理员权限 + +``` +/api/dashboard/** +/api/admin/** +/settings/** +/users/** +``` + +## 完整 Nginx 配置示例 + +```nginx +server { + listen 80; + server_name localhost; + root /www/wwwroot/your-domain.com; + index index.html index.htm; + + # 开启gzip压缩 + gzip on; + gzip_vary on; + gzip_min_length 1024; + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript application/vnd.ms-fontobject application/x-font-ttf font/opentype image/svg+xml image/x-icon; + + # 前端路由支持(History模式) + location / { + try_files $uri $uri/ /index.html; + } + + # API 代理到后端(主要路由) + location /api/ { + proxy_pass http://172.22.0.1:8080/; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + # 超时设置 + proxy_connect_timeout 30s; + proxy_send_timeout 900s; + proxy_read_timeout 900s; + + # 支持大文件上传 + client_max_body_size 600M; + } + + # Swagger UI 代理 + location ~ ^/(swagger-ui|v3/api-docs|swagger-resources|webjars) { + proxy_pass http://172.22.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + # 上传文件代理 + location /uploads/ { + proxy_pass http://172.22.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + expires 7d; + add_header Cache-Control "public, immutable"; + } + + # 静态资源缓存 + location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ { + expires 1y; + add_header Cache-Control "public, immutable"; + } + + # 禁止访问隐藏文件 + location ~ /\. { + deny all; + access_log off; + log_not_found off; + } +} +``` + +## 宝塔面板配置 + +在宝塔面板中配置反向代理: + +1. 进入网站设置 → 反向代理 +2. 添加反向代理规则: + - **代理名称**: API代理 + - **目标URL**: http://172.22.0.1:8080 + - **发送域名**: $host + - **代理路径**: /api/ + - **缓存**: 关闭 + +## 总结 + +- **统一API前缀**: `/api/` +- **后端服务地址**: `http://172.22.0.1:8080` +- **主要代理路径**: `/api/` → `http://172.22.0.1:8080/` +- **文档访问**: `/swagger-ui.html` +- **特殊配置**: 需要支持大文件上传(600M)和长时间请求(15分钟) + diff --git a/demo/deploy_baota/backend/application-prod.properties.example b/demo/deploy_baota/backend/application-prod.properties.example new file mode 100644 index 0000000..a5cfef4 --- /dev/null +++ b/demo/deploy_baota/backend/application-prod.properties.example @@ -0,0 +1,108 @@ +# 生产环境配置 +spring.h2.console.enabled=false + +# MySQL DataSource (PROD) - 使用环境变量 +spring.datasource.url=jdbc:mysql://mysql:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true +spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver +spring.datasource.username= aigc_user +spring.datasource.password= jRbHPZbbkdm24yTT + +# 数据库连接池配置 (生产环境 - 支持50人并发) +spring.datasource.hikari.maximum-pool-size=30 +spring.datasource.hikari.minimum-idle=5 +spring.datasource.hikari.idle-timeout=300000 +spring.datasource.hikari.max-lifetime=1200000 +spring.datasource.hikari.connection-timeout=30000 +spring.datasource.hikari.leak-detection-threshold=60000 +spring.datasource.hikari.validation-timeout=3000 +spring.datasource.hikari.connection-test-query=SELECT 1 + +# 生产环境:使用 update 模式自动创建/更新表结构(首次部署) +# 部署完成后可改为 validate 模式以提高安全性 +spring.jpa.hibernate.ddl-auto=update +spring.jpa.show-sql=false +spring.jpa.properties.hibernate.format_sql=false + +# 禁用 SQL 脚本自动运行 +spring.sql.init.mode=never + +# Thymeleaf 可启用缓存 +spring.thymeleaf.cache=true + +# AI API配置 (生产环境) +# 文生视频、图生视频、分镜视频都使用Comfly API +ai.api.base-url=${AI_API_BASE_URL:https://ai.comfly.chat} +ai.api.key=${AI_API_KEY} +# 文生图使用Comfly API +ai.image.api.base-url=${AI_IMAGE_API_BASE_URL:https://ai.comfly.chat} +ai.image.api.key=${AI_IMAGE_API_KEY} + +# 支付宝配置 (生产环境) +alipay.app-id=${ALIPAY_APP_ID} +alipay.private-key=${ALIPAY_PRIVATE_KEY} +alipay.public-key=${ALIPAY_PUBLIC_KEY} +alipay.gateway-url=https://openapi.alipay.com/gateway.do +alipay.charset=UTF-8 +alipay.sign-type=RSA2 +alipay.domain=${ALIPAY_DOMAIN:https://vionow.com} +alipay.notify-url=${ALIPAY_NOTIFY_URL:https://vionow.com/api/payments/alipay/notify} +alipay.return-url=${ALIPAY_RETURN_URL:https://vionow.com/payment/success} + +# JWT配置 - 使用环境变量 +jwt.secret=${JWT_SECRET} +jwt.expiration=${JWT_EXPIRATION:604800000} + +# 腾讯云SES配置 (生产环境) +tencent.ses.secret-id=${TENCENT_SES_SECRET_ID} +tencent.ses.secret-key=${TENCENT_SES_SECRET_KEY} +tencent.ses.region=ap-hongkong +tencent.ses.from-email=${TENCENT_SES_FROM_EMAIL} +tencent.ses.from-name=AIGC平台 +# 邮件模板ID(在腾讯云SES控制台创建模板后获取) +# 如果未配置或为0,将使用开发模式(仅记录日志) +tencent.ses.template-id=${TENCENT_SES_TEMPLATE_ID} + +# Tomcat线程池配置 (生产环境 - 支持50人并发) +server.tomcat.threads.max=150 +server.tomcat.threads.min-spare=20 +server.tomcat.max-connections=500 +server.tomcat.accept-count=100 +server.tomcat.connection-timeout=20000 + +# 生产环境日志配置 +logging.level.root=INFO +logging.level.com.example.demo=INFO +logging.level.org.springframework.security=WARN +logging.file.name=${LOG_FILE_PATH:./logs/application.log} +logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n + +# 视频处理配置 +# 临时文件目录(相对路径:基于应用运行目录,或绝对路径) +# 生产环境建议使用绝对路径,如:/app/temp 或 C:\app\temp +app.temp.dir=${TEMP_DIR:./temp} +# FFmpeg路径(如果FFmpeg在PATH中,使用 "ffmpeg",否则使用完整路径) +# 生产环境建议使用完整路径,如:/usr/bin/ffmpeg 或 C:\ffmpeg\bin\ffmpeg.exe +app.ffmpeg.path=${FFMPEG_PATH:ffmpeg} + +# 文件上传配置 +# 上传文件保存目录(相对路径:基于应用运行目录,或绝对路径) +# 生产环境建议使用绝对路径,如:/app/uploads 或 C:\app\uploads +# 注意:确保应用有读写权限 +app.upload.path=${UPLOAD_PATH:./uploads} + +# SpringDoc OpenAPI (Swagger) 配置 +# 生产环境建议禁用或限制访问 +springdoc.api-docs.path=/v3/api-docs +springdoc.swagger-ui.path=/swagger-ui.html +springdoc.swagger-ui.enabled=true +springdoc.swagger-ui.operationsSorter=method +springdoc.swagger-ui.tagsSorter=alpha +springdoc.swagger-ui.tryItOutEnabled=true +springdoc.swagger-ui.filter=true +springdoc.swagger-ui.display-request-duration=true +springdoc.swagger-ui.doc-expansion=none + + + + + diff --git a/demo/deploy_baota/backend/application-prod.properties.template b/demo/deploy_baota/backend/application-prod.properties.template new file mode 100644 index 0000000..4c64523 --- /dev/null +++ b/demo/deploy_baota/backend/application-prod.properties.template @@ -0,0 +1,49 @@ +# 生产环境配置文件模板 +# 复制此文件为 application-prod.properties 并修改相应配置 + +# 数据库配置 +spring.datasource.url=jdbc:mysql://172.22.0.2:3306/aigc_platform?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true +spring.datasource.username=your_db_username +spring.datasource.password=your_db_password +spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver + +# JPA配置 +spring.jpa.hibernate.ddl-auto=update +spring.jpa.show-sql=false +spring.jpa.properties.hibernate.format_sql=false + +# JWT配置 +jwt.secret=your-jwt-secret-key-change-this-in-production +jwt.expiration=86400000 + +# AI API配置 +ai.api.base-url=https://ai.comfly.chat +ai.api.key=your-ai-api-key +ai.image.api.base-url=https://ai.comfly.chat +ai.image.api.key=your-ai-image-api-key + +# 文件上传配置 +app.upload.path=./uploads +app.temp.dir=./temp +app.log.file.path=./logs/application.log + +# FFmpeg配置 +app.ffmpeg.path=ffmpeg + +# 支付宝配置(可选) +alipay.app-id=your-alipay-app-id +alipay.private-key=your-alipay-private-key +alipay.public-key=your-alipay-public-key +alipay.domain=https://vionow.com +alipay.notify-url=https://vionow.com/api/payments/alipay/notify +alipay.return-url=https://vionow.com/payment/success + +# 服务器配置 +server.port=8080 +server.servlet.context-path=/ + +# 日志配置 +logging.level.root=INFO +logging.level.com.example.demo=INFO + + diff --git a/demo/deploy_baota/backend/start.sh b/demo/deploy_baota/backend/start.sh new file mode 100644 index 0000000..79ddc54 --- /dev/null +++ b/demo/deploy_baota/backend/start.sh @@ -0,0 +1,111 @@ +#!/bin/bash +# 宝塔面板后端启动脚本 + +# 设置JAVA_HOME(根据实际Java安装路径修改) +# export JAVA_HOME=/usr/lib/jvm/java-21-openjdk +# export PATH=$JAVA_HOME/bin:$PATH + +# 应用配置 +APP_NAME="aigc-backend" +APP_JAR="app.jar" +APP_PORT=8080 +APP_HOME=$(cd "$(dirname "$0")"; pwd) +LOG_DIR="$APP_HOME/logs" +PID_FILE="$APP_HOME/app.pid" + +# JVM参数(根据服务器内存调整) +JAVA_OPTS="-Xms1g -Xmx4g -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Djava.security.egd=file:/dev/./urandom" + +# 创建日志目录 +mkdir -p $LOG_DIR + +# 启动函数 +start() { + if [ -f "$PID_FILE" ]; then + PID=$(cat $PID_FILE) + if ps -p $PID > /dev/null 2>&1; then + echo "$APP_NAME 已经在运行中 (PID: $PID)" + return 1 + else + rm -f $PID_FILE + fi + fi + + echo "启动 $APP_NAME..." + cd $APP_HOME + nohup java $JAVA_OPTS -jar $APP_JAR --spring.profiles.active=prod > $LOG_DIR/app.log 2>&1 & + echo $! > $PID_FILE + echo "$APP_NAME 启动成功 (PID: $(cat $PID_FILE))" +} + +# 停止函数 +stop() { + if [ ! -f "$PID_FILE" ]; then + echo "$APP_NAME 未运行" + return 1 + fi + + PID=$(cat $PID_FILE) + if ps -p $PID > /dev/null 2>&1; then + echo "停止 $APP_NAME (PID: $PID)..." + kill $PID + sleep 3 + if ps -p $PID > /dev/null 2>&1; then + kill -9 $PID + fi + rm -f $PID_FILE + echo "$APP_NAME 已停止" + else + echo "$APP_NAME 未运行" + rm -f $PID_FILE + fi +} + +# 重启函数 +restart() { + stop + sleep 2 + start +} + +# 状态检查 +status() { + if [ -f "$PID_FILE" ]; then + PID=$(cat $PID_FILE) + if ps -p $PID > /dev/null 2>&1; then + echo "$APP_NAME 正在运行 (PID: $PID)" + return 0 + else + echo "$APP_NAME 未运行" + rm -f $PID_FILE + return 1 + fi + else + echo "$APP_NAME 未运行" + return 1 + fi +} + +# 主逻辑 +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + restart + ;; + status) + status + ;; + *) + echo "用法: $0 {start|stop|restart|status}" + exit 1 + ;; +esac + +exit 0 + + diff --git a/demo/deploy_baota/frontend/images/backgrounds/1.jpg b/demo/deploy_baota/frontend/images/backgrounds/1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d816c24c092e4cfac63b6289c01e5c5a5612192f GIT binary patch literal 13001 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 literal 0 HcmV?d00001 diff --git a/demo/deploy_baota/frontend/images/backgrounds/login.png b/demo/deploy_baota/frontend/images/backgrounds/login.png new file mode 100644 index 0000000000000000000000000000000000000000..6988b90932823c3555e87c651592216218c4d501 GIT binary patch literal 868507 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
  • 3G-090u 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

    sM`Jad7Xs7H&W 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 z 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

    x?C`ta5~d>+biIWg@vu^fjLD3 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ⅇ9=`Uo`e^%$ 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�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

    Ru;706g|!tn_e-FZ!Gv7) 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 dgEA^Q*qU-1q9hy`i|Pr%R7|vvLh=(o0_|% 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%0A8aER+d);ueBTC;;=-xzv_%zh18I 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