使用Azure GitHub Actions部署成功后出现404错误求助
排查Azure App Service部署后404问题及学生部署服务推荐
一、404错误排查步骤
- 检查应用启动状态:
登录Azure门户,进入目标App Service,查看左侧菜单的「日志流」或「诊断和解决问题」中的「应用启动诊断」,确认应用是否正常启动,是否存在启动报错(如端口配置错误、依赖缺失等)。 - 验证部署包内容:
通过App Service的「高级工具(Kudu)」,进入「Debug console」->「CMD」,查看site/wwwroot目录下的文件结构是否符合预期。Maven构建的Java应用,应包含正确的war包、解压后的应用文件或Spring Boot jar包;若文件缺失或路径错误,会直接导致404。 - 核对路由与上下文路径:
你的访问路径为/hello,需确认应用内是否存在对应路由映射(如Spring Boot中是否有@GetMapping("/hello")注解的方法)。若使用war包部署到Tomcat,需注意:若war包名称不是ROOT.war,访问路径需加上<war包名>/hello;或在App Service的「配置」->「路径映射」中设置「虚拟应用和目录」,将应用映射到根路径。 - 确认运行时与启动配置:
在App Service的「配置」->「常规设置」中,检查Java版本是否与项目所用版本一致,启动命令是否正确。例如Spring Boot jar包的启动命令应为java -jar <你的jar包名称>.jar;war包部署需确认Tomcat版本与项目兼容。 - 检查端口配置:
Azure App Service会自动分配端口,应用需监听PORT环境变量指定的端口,而非硬编码的8080。可在项目配置中设置server.port=${PORT:8080}(以Spring Boot为例),确保应用使用正确端口。
二、适合学生订阅的易用部署服务
- Azure App Service(免费F1层):学生订阅可直接使用,支持多语言部署,集成GitHub Actions流程便捷,满足小型学习项目需求。
- GitHub Pages:专为静态网页项目设计,完全免费,直接从GitHub仓库部署,操作简单,适合前端静态项目学习。
- Render:提供免费Web服务部署,支持Java、Node.js等多种语言,部署流程直观,免费层资源足够支撑小型学习项目。
- Heroku(免费层):虽免费层有资源限制,但部署流程简单,支持多语言,适合学生快速上手部署实践。
内容的提问来源于stack exchange,提问作者Andriy Snovyda
相关产品推荐
相关产品推荐

