Node.JS Express应用程序将不会在运行Ubuntu的AWS EC2实例上运行
在过去的24小时里,我一直在尝试运行我的express应用程序。我已经按照教程,卸载,然后重新安装了所有的东西,但仍然…没有骰子 下面是我要安装的安装程序的详细信息 下面是我的命令提示符中的代码,说明了当我尝试运行应用程序时会发生什么Node.JS Express应用程序将不会在运行Ubuntu的AWS EC2实例上运行,node.js,express,Node.js,Express,在过去的24小时里,我一直在尝试运行我的express应用程序。我已经按照教程,卸载,然后重新安装了所有的东西,但仍然…没有骰子 下面是我要安装的安装程序的详细信息 下面是我的命令提示符中的代码,说明了当我尝试运行应用程序时会发生什么 bitnami@ip-172-31-43-127:~/projects/sample$ ls app.js bin node_modules package.json public routes views bitnami@ip-172-31-43-1
bitnami@ip-172-31-43-127:~/projects/sample$ ls
app.js bin node_modules package.json public routes views
bitnami@ip-172-31-43-127:~/projects/sample$ ./bin/www
nothing happens... it will just blink on this line forever♥
bitnami@ip-172-31-43-127:~/projects/sample$ DEBUG=new ./bin/www
same thing. it will blink forever an ⌂d ⌂♥
bitnami@ip-172-31-43-127:~/projects/sample$ DEBUG=new npm start
> sample@0.0.0 start /home/bitnami/projects/sample
> node ./bin/www
slightly different result... but the app is not running on localhost:3000♥
bitnami@ip-172-31-43-127:~/projects/sample$
我曾尝试从中实现此功能,但它没有修复
有人能告诉我我做错了什么以及如何纠正这个问题吗?谢谢!:)
app.js的内容
var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var routes = require('./routes/index');
var users = require('./routes/users');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
// uncomment after placing your favicon in /public
//app.use(favicon(__dirname + '/public/favicon.ico'));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', routes);
app.use('/users', users);
// catch 404 and forward to error handler
app.use(function(req, res, next) {
var err = new Error('Not Found');
err.status = 404;
next(err);
});
// error handlers
// development error handler
// will print stacktrace
if (app.get('env') === 'development') {
app.use(function(err, req, res, next) {
res.status(err.status || 500);
res.render('error', {
message: err.message,
error: err
});
});
}
// production error handler
// no stacktraces leaked to user
app.use(function(err, req, res, next) {
res.status(err.status || 500);
res.render('error', {
message: err.message,
error: {}
});
});
module.exports = app;
var port = 3000;
app.listen(port, function() {
console.log('Listening...');
});
你试过跑步吗
npm start
您还可以键入rm-rf bin/
删除文件夹,然后在app.js的底部添加
app.listen(port, function() {
console.log('Listening...');
});
然后跑
node app
请发布文字,而不是图片谢谢:)@DaveNewton我更改了:)如果你不向我们展示你的代码,你希望我们如何帮助你?@jfriend00我已经发布了app.js的内容。我很抱歉我试着实施了你的解决方案。我现在在控制台中看到“正在侦听…”,但应用程序不会在我的本地主机上呈现网页:3000@MarkusProctor尝试删除module.exports=app;如果您的视图中有适合您的路由的适当文件,请尝试转到/hdjdj或一些随机文件,以查看是否出现错误404,如果您这样做,那么它工作正常,您只需要修复路由或视图简化,而不需要掷骰子。Chrome显示“此网页不可用。错误\连接被拒绝”。我直接从提供商那里安装了这个包,没有做任何更改。我的EC2正在linux上运行,如果这改变了什么。@MarkusProctor好的,听起来像是端口问题,请确保您的EC2实例上打开了端口3000。谷歌如何做到这一点,然后让我知道它是否工作这里是我的实例的url,但运行该应用程序根本不会改变页面内容。我想localhost:3000是有意义的东西(oops:)