Express 应用找不到 index.html
Express app cannot find index.html
我将 Express 应用程序推送到我的 Tessel 2 时遇到问题,我可以在本地运行它,但是一旦将其推送到另一个系统,就会出现问题。这是我收到的错误:
Error: ENOENT: no such file or directory, stat '/tmp/remote-script/public/index.html'
at Error (native)
这是我的 Express 路线设置:
app.use('/static', express.static('public'))
app.get('/', function (req, res) {
res.sendFile(path.join(__dirname + '/public/index.html'));
})
我尝试了几个不同的文件路径位置,例如 /../public/index.html
和 none 似乎都可以。我的目录结构有 index.js
作为主节点文件,然后我有一个 public 目录,其中包含 index.html
文件。
如有任何帮助,我们将不胜感激。
在express.static
中尝试使用绝对路径
app.use('/static', express.static(path.join(__dirname, 'public')))
然后
res.sendFile(path.join(__dirname, '/public/index.html'));
此外,我建议您使用 render
而不是上面的方法
res.render('index')
这最终成为 Tessel 2 而不是 Node 的问题,我需要更新 .tesselinclude
文件以将 public 目录推送到设备,如下所示:public/**
我将 Express 应用程序推送到我的 Tessel 2 时遇到问题,我可以在本地运行它,但是一旦将其推送到另一个系统,就会出现问题。这是我收到的错误:
Error: ENOENT: no such file or directory, stat '/tmp/remote-script/public/index.html'
at Error (native)
这是我的 Express 路线设置:
app.use('/static', express.static('public'))
app.get('/', function (req, res) {
res.sendFile(path.join(__dirname + '/public/index.html'));
})
我尝试了几个不同的文件路径位置,例如 /../public/index.html
和 none 似乎都可以。我的目录结构有 index.js
作为主节点文件,然后我有一个 public 目录,其中包含 index.html
文件。
如有任何帮助,我们将不胜感激。
在express.static
app.use('/static', express.static(path.join(__dirname, 'public')))
然后
res.sendFile(path.join(__dirname, '/public/index.html'));
此外,我建议您使用 render
res.render('index')
这最终成为 Tessel 2 而不是 Node 的问题,我需要更新 .tesselinclude
文件以将 public 目录推送到设备,如下所示:public/**