Node.js Heroku找不到index.html文件';错误:enoint:没有这样的文件或目录';
我已经用Node、express和Vue创建了一个基本的登录应用程序。我试图把它推给Heroku,但我得到了下面的错误。我知道下面的文件路径不存在,所以我的问题是如何让Heroku查找: “/server/client/dist/index.html” 而不是它在下面寻找的:Node.js Heroku找不到index.html文件';错误:enoint:没有这样的文件或目录';,node.js,express,heroku,vue.js,Node.js,Express,Heroku,Vue.js,我已经用Node、express和Vue创建了一个基本的登录应用程序。我试图把它推给Heroku,但我得到了下面的错误。我知道下面的文件路径不存在,所以我的问题是如何让Heroku查找: “/server/client/dist/index.html” 而不是它在下面寻找的: zyHow heroku错误的完整路径可能是正确的(假设您正在构建部署说明中的/client/dist/文件夹)。heroku上可能没有根/server文件夹,因为应用程序部署到根/app文件夹。或许可以尝试以下解决方案:
zyHow heroku错误的完整路径可能是正确的(假设您正在构建部署说明中的
/client/dist/
文件夹)。heroku上可能没有根/server
文件夹,因为应用程序部署到根/app
文件夹。或许可以尝试以下解决方案:
const express = require("express");
const volleyball = require("volleyball");
const cors = require("cors");
const app = express();
const auth = require("./auth/index");
app.use(
cors({
origin: "http://localhost:8080"
})
);
app.use(volleyball);
app.use(express.json());
app.use(express.static(__dirname + "/client/dist/"));
app.get("/", (req, res) => {
res.sendFile(__dirname + "/client/dist/index.html");
});
app.use("/auth", auth);
function notFound(req, res, next) {
res.status(404);
const error = new Error("Not found - " + req.originalUrl);
next(error);
}
function errorHandler(err, res, next) {
res.status(res.statusCode || 500);
res.json({
message: err.message,
stack: err.stack
});
}
app.use(notFound);
app.use(errorHandler);
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log("Listening on port", port);
});