Cannot GET /
이 에러가 보인다면... 아마 모듈버전을 옛날버전에 맞춰 코딩했을 수 도 있다. (사실 디테일한 확인은.. 모듈버전을 내려야해서 해보지 않았다... 다만 예전의 설명한 내용을보면 ... 버전이 예전것이고 그 버전에서의 코드형태는 여러곳의 설명들에서 동일했다)
현재 그냥 npm install connect 로 설치 했다면 근래 버전으로 됐을것이고.. / 디렉토리의 설정이 필요할것이란걸 에러내용에서 확인했을것이다.
클라우드 9 에서 테스트 했다.
var connect = require('connect');
var __dirName = 'node.js/';
var appServ = connect.createServer().use(connect.static(__dirName+'public'));
appServ.listen(process.env.C9_PORT);
클라우드 9 에서 node.js 이하에서 코드가 작성되어서 저렇게 했고 node.js 이하 public 에 index.html을 두었다.
잘나왔다; 끝
아.. 그리고 connect 2.0 이상 버전에서는 createServer 가 deprecated 되었다니 쓰지말도록
This code should work:
var connect = require("connect");
var app = connect.createServer().use(connect.static(__dirname + '/public'));
app.listen(8180);
Also in connect 2.0 .createServer() method deprecated. Use connect() instead.
var connect = require("connect");
var app = connect().use(connect.static(__dirname + '/public'));
app.listen(8180);
var connect = require('connect');
connect().use(connect.logger('dev'))
.use(connect.static('node.js/public')) // root 를 정해두고 그 안에 index.html이 없으면 아래의 res.end 한게 표시된다.
.use(function(req,res) {
res.end('hello ~~');
})
.listen(process.env.PORT);
////////////////////////////////////////////////////////////////////////////////
var connect = require('connect');
connect().use(connect.static('node.js/public'))
.use(connect.logger('dev'))
.use(function(request,response,next){
console.log('1st');
next();
})
.use(function(request,response,next) {
console.log('2nd');
next();
})
.use(function(request,response,next) {
console.log('3rd');
response.writeHead(200,{'Content-Type':'text/html'});
response.end('<h1>Hello Connect...</h1>');
})
.listen(process.env.PORT,function(){
console.log('Server port:'+process.env.PORT);
});
'IT > node.js' 카테고리의 다른 글
connect ... has no method 'router' ??? node.js (1) | 2012.04.16 |
---|