我是node.js的新手,我想让网络服务器正常运行,但我遇到了这个问题,试图通过运行node ./bin/www
来调试应用程序完美无缺,但试图通过node app.js
dosen&#39启动它什么都不做
当我在终端空白行中键入node app.js
时,会出现类似于在几个seccods中加载内容和消息而没有任何错误或启动应用程序。
答案 0 :(得分:2)
问题是app.js正在导出app对象,而不是启动服务器。如果你查看bin / www的代码,你会看到它加载app对象并用它来启动服务器。
#!/usr/bin/env node
var debug = require('debug')('tmp');
var app = require('../app');
app.set('port', process.env.PORT || 3000);
var server = app.listen(app.get('port'), function() {
debug('Express server listening on port ' + server.address().port);
});
您需要使用bin / www启动应用,或者如果您不想要单独的启动脚本,请修改并将该代码移动到app.js的末尾。
答案 1 :(得分:0)
如果要查看调试消息,则需要将DEBUG环境变量添加到shell会话中。对于开发环境,您可以将其放在.bashrc
文件中自动执行此操作。
export DEBUG=express:*
或者如果您不想这样做,您可以这样做:
DEBUG=express:* node ./bin/www