You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署Node.js移动Web应用至Azure后出现HTTP 500错误,如何排查修复?

排查Azure Node.js应用部署后500错误(EJS视图相关)

第一步:确认EJS依赖部署状态

  • 检查package.json中ejs是否在dependencies字段下(Azure默认不安装devDependencies中的包),本地正常但部署后缺失依赖是常见问题。
  • 通过Azure门户的高级工具 > Kudu,进入网站目录查看node_modules下是否有ejs文件夹,或在Kudu控制台执行npm list ejs确认依赖是否安装成功。

第二步:核对EJS视图配置

  • 确保代码中正确设置了视图引擎与路径,示例代码:
    const path = require('path');
    app.set('view engine', 'ejs');
    app.set('views', path.join(__dirname, 'views'));
    
  • 避免使用硬编码的相对路径,Azure部署后的文件结构与本地可能存在差异,必须用path模块拼接路径。

第三步:查看具体错误日志

500是通用服务器错误,必须通过日志定位问题:

  • 登录Azure门户,进入目标App Service,在监控 > 日志流中实时查看应用运行日志。
  • 开启配置 > 常规设置里的详细错误日志记录,重新访问页面后会显示具体错误信息。
  • 通过Kudu的调试控制台 > LogFiles > Application,查看最新的错误日志文件。

第四步:验证视图文件完整性

  • 在Kudu的调试控制台 > site > wwwroot下,确认views文件夹完整上传,所有.ejs文件存在且文件名与代码引用一致(Linux部署环境需注意文件名大小写敏感)。

第五步:测试简化视图

  • 创建一个极简的test.ejs文件(仅保留<h1>Test</h1>),修改路由指向该视图后重新部署,若能正常显示则排除基础配置问题,可逐步排查原有视图的代码错误。

内容的提问来源于stack exchange,提问作者matt gaming

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 08:40:36