2014-09-04 4 views
0

저는 node.js를 처음 사용하고 있습니다. 웹 서버를 실행하고 싶지만 node ./bin/www을 실행하여 응용 프로그램을 디버깅하려고 할 때 완벽하게 작동하지만이 서버를 실행하려고 시도 할 때이 문제가 발생했습니다. node app.js dosen't 뭐든지해라.application.js는 시작하지만 디버그는 작동하지 않습니다

터미널 공백 행에 node app.js을 입력하면 오류가 발생하거나 시작 응용 프로그램이 없어도 일부 seccods에서 사라지는 것처럼 보입니다.

+0

괜찮습니다. 실제로 실행 파일이라면, 파일의 경로 앞에'.'이 붙어 있습니다. 그 전에'node'를 추가 할 필요가 없습니다. –

답변

2

문제는 그 app.js입니다 응용 프로그램을 수출 객체, 서버를 시작하지 않습니다. 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); 
}); 

당신은 빈/WWW를 사용하여 응용 프로그램을 시작하거나 수정하고 별도의 시작 스크립트를 원하지 않는 경우 app.js의 끝에 해당 코드를 이동하거나해야합니다.

0

디버그 메시지를 보려면 쉘 세션에 DEBUG 환경 변수를 추가해야합니다. 개발 환경의 경우, .bashrc 파일에 배치하여 자동으로이 작업을 수행 할 수 있습니다.

export DEBUG=express:*

아니면 그냥이 할 수있는, 그렇게하지 않으려면 :

DEBUG=express:* node ./bin/www

http://expressjs.com/guide.html#debugging-express

+0

그는 앱이 전혀 시작되지 않는다고 말하면서 로깅이 깨지지 않았다고 말합니다. – mz3

관련 문제