node.js - 在 app@1.0.0 启动脚本失败 这可能不是 npm 的问题。上面可能有额外的日志输出
问题描述
大家好,我创建了一个Mern stack的小项目。我在 Heroku 上正确部署它。但是一旦我在部署后在 Heroku 上检查她,然后加载资源失败:服务器响应状态为 503(服务不可用)错误即将到来。 但是,一旦我在部署后在 cmd 中运行 heroku local,它就可以正常工作。我在 heroku 设置代码下面给出。请指导我。请 ........
后端的 package.sjon 文件
{
"name": "app",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "npm install && node index",
"heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix client && npm run build --prefix client"
},
"dependencies": {
"config": "^3.3.1",
"express": "~4.16.1",
"express-fileupload": "^1.1.7-alpha.3",
"mongoose": "^5.9.12",
"nodemailer": "^6.4.6"
},
"keywords": [],
"author": "",
"license": "ISC"
}
后端的 index.js 文件
var express = require('express');
var path = require('path');
const connectDB = require('./config/db')
var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
var studentRouter = require('./routes/student')
var app = express();
connectDB();
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.static('client/build'))
app.get('/', (req, res) => {
res.sendFile(path.resolve(__dirname, 'client', 'build', 'index.html'))
})
app.use('/', indexRouter);
app.use('/', studentRouter);
app.use('/users', usersRouter);
if (process.env.NODE_ENV == "production") {
app.use(express.static('client/build'))
app.get('*', (req, res) => {
res.sendFile(path.resolve(__dirname, 'client', 'build', 'index.html'))
})
}
var port = process.env.PORT || '8000';
app.listen(port, () => {
console.log(`server run port ${port}`);
})
module.exports = app;
解决方案
推荐阅读
- html - 在css中添加字体系列后字体样式没有改变
- hdfs - 在 Nifi 中生成 128MB 的块
- selenium-webdriver - Selenium by.xpath 给出了元素不可点击的异常,因为使用 by.id 点击了所需的元素,不明白为什么
- python - Networkx:实时绘制最短路径
- azure-pipelines - 克隆 Azure devops 的构建和发布管道
- java - 使用 Spring Security 根据用户角色登录后重定向到不同的页面
- google-chrome-extension - 如何让我的 chrome 扩展程序启动并运行?
- php - AWS 使用 PHP 开发工具包删除文件夹中包含的所有内容
- powerbi - 使用 Power Query 或 Power BI 转换表中的 100 多个范围
- ios - 构建 Flutter iOS 应用程序时如何解决“格式错误的项目”构建错误