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

Express项目报错ENOENT:找不到指定文件或目录求助

解决ENOENT文件找不到错误的方案

嘿,我一眼就发现问题出在哪了!

错误原因

你遇到的Error: ENOENT: no such file or directory是因为路径拼接时缺少了目录分隔符。__dirname会返回当前脚本(server.js)所在的绝对路径,也就是D:\awesome-test,但你直接把它和index.html拼接成__dirname + 'index.html',结果就变成了D:\awesome-testindex.html——系统自然找不到这个不存在的文件。

修复方案

有两种简单的解决办法:

方法1:手动添加路径分隔符

直接在__dirname和文件名之间加上斜杠:

app.get('/', function(req, res) {
  res.sendFile(__dirname + '/index.html');
});

方法2:用Node.js内置的path模块(更推荐,跨平台友好)

path.join()会自动根据操作系统使用正确的路径分隔符(Windows用\,Linux/macOS用/),避免手动拼接出错:

// 先引入path模块
const express = require('express');
const path = require('path'); // 新增这一行

const app = express();

app.get('/', function(req, res) {
  res.sendFile(path.join(__dirname, 'index.html')); // 用path.join拼接路径
});

app.listen(8080);
console.log('Server has started!');

这样修改后,路径就会正确生成为D:\awesome-test\index.html,系统就能找到你的index.html文件啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 10:28:39