我有一个公共文件夹,我在其中放置了一个angular2应用程序。现在我正在尝试使用总是返回index.html的catchall路由来设置快速服务器。要明确 - 根据this question,我需要将所有路线映射到index.html。
如果我访问基本服务器URL(localhost:10001),一切都按预期工作。但是当我去一条路线(让我们说localhost:10001 /登陆),并刷新页面时,我收到以下错误:
错误:ENOENT:没有这样的文件或目录,stat “/Users/shooshte/express-test/index.html”错误(原生)
这是我的服务器配置:
var express = require('express');
var static = require('serve-static');
var server = express();
// middleware
server.use(express.static(__dirname + '/public'));
// routes
server.use('*', function (req, res) {
res.sendFile(__dirname + '/index.html');
});
var port = 10001;
server.listen(port, function() {
console.log('server listening on port ' + port);
});
我做错了什么?
答案 0 :(得分:1)
您错过了public
路径中的index.html
目录:
res.sendFile(__dirname + '/public/index.html');
答案 1 :(得分:0)
我认为你没有公共或根文件夹中的index.html / Users / shooshte / express-test /
这是您收到此错误的唯一原因