我已经用 express服务器构建了一个 angular cli 应用,在 heroku 中部署后,我尝试运行该应用,但出现此错误为:
无法加载资源:服务器的响应状态为503(服务不可用)
我尝试遵循上一个答案,并添加了 serve-favicon 依赖性,但错误仍然存在。这是我的 server.js
const express = require{'express'};
const favicon = require('serve-favicon')
const app = express();
const path = require('path');
app.use(express.static(__dirname + '/dist'));
// app.use(favicon(__dirname + '/dist/favicon.ico'));
app.use(favicon(__dirname + '/dist/favicon.ico'));
// app.use(favicon(path.join(__dirname,'dist','favicon.ico')));
app.listen(process.env.PORT || 8080);
//path location strategy
app.get('/*',function(req,res) {
res.sendFile(path.join(__dirname + '/dist/index.html'));
})
console.log('console listeing!');
Favicon位于 appname / src / favicon.ico 。 在localhost上没有问题,一切都可以正确加载,在成功部署后尝试运行myoku应用程序后出现错误。
答案 0 :(得分:1)
我认为服务器尚未准备就绪,因为您写了:require{'express'}
而不是require('express')
。
const express = require('express'); // Here
var favicon = require('serve-favicon')
const app = express();
const path = require('path');
app.use(express.static(__dirname + '/dist'));
// app.use(favicon(__dirname + '/dist/favicon.ico'));
app.use(favicon(__dirname + '/dist/favicon.ico'));
// app.use(favicon(path.join(__dirname,'dist','favicon.ico')));
app.listen(process.env.PORT || 8080);
//path location strategy
app.get('/*',function(req,res) {
res.sendFile(path.join(__dirname + '/dist/index.html'));
})
console.log('console listeing!');
答案 1 :(得分:0)
也表达一种npm module
。
因此我们可以要求:
const express = require('express');
现在不会出现错误。
请尝试使用此解决方案。对我来说很好。