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

在A2Hosting部署Node.js应用失败:ENOENT文件找不到错误

解决A2Hosting部署Node.js应用的ENOENT错误

核心问题

你代码里的根路由指向了/public/index.html,但实际文件存在/public/html/index.html,路径不匹配导致找不到文件,进而引发部署时「Run JS script」加载异常和访问报错。

修复步骤

  • 修正app.js的根路由路径:找到处理根路由的代码(比如用res.sendFile或静态托管的部分),把目标路径从public/index.html改成public/html/index.html。
    举个例子,原代码如果是:
    app.get('/', (req, res) => {
      res.sendFile(path.join(__dirname, 'public', 'index.html'));
    });
    
    修改为:
    app.get('/', (req, res) => {
      res.sendFile(path.join(__dirname, 'public', 'html', 'index.html'));
    });
    
  • 调整静态文件托管设置(可选):如果用了express.static托管静态资源,要么把index.html移到public根目录下,要么把静态路径改成app.use(express.static('public/html')),同时对应调整路由逻辑。
  • 重新部署:代码修改完成后,回到A2Hosting的Node部署页面重新执行「Run JS script」,等待部署完成后再访问应用URL。

额外排查点

  • 核对路径大小写:Linux服务器区分大小写,确保代码里的路径大小写和实际文件系统完全一致(比如Public和public是两个不同路径)。
  • 检查文件权限:确保index.html文件权限为644,所在目录权限为755,避免因权限不足导致服务器无法读取文件。

内容的提问来源于stack exchange,提问作者Pradeep Singh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 18:49:53