node js cannot read property 'replace' of undefined 에러 해결 



방금전 ejs를 못찾는다는 에러를 해결후 예제대로 테스트를 해봤는데


서버 실행시키는 것 까지는 성공


그러나 브라우저에서 해당 포트번호 적고 띄워보니


cannot read property 'replace' of undefined 라는 에러가 나타나면서 접속에러가 떠버린다.


이건 뭐 내가 뭘 잘못했는지도 모르겠고


30분 삽질하다가 예제의



1
2
3
4
5
6
7
8
9
10
11
12
var ejs = require('ejs');
var http = require('http');
var fs = require('fs');
 
http.createServer(function (request, response) {
    fs.readFile('ejstest.ejs''utf8'function (error, data) {
        response.writeHead(200, { 'Content-Type''text/html' });
        response.end(ejs.render(data));
    });
}).listen(5000function () {
    console.log('Server Running...');
});
cs


서버실행 부분의 readfile를 보니


ejs 파일명만 적어놓고 경로는 없다는걸 보고


혹시나 하는 생각에 위의 예제가 있는 폴더 안에 ejs 파일을 넣고 실행시켰더니 정상 동작 한다....


그렇지.. 아직 맵핑도 없고 아무것도 없는 상태였지...


하.. 멍청한짓을 하다니;;


너무도 자연스럽게 서버와 ejs는 분리되는게 맞겠지 하면서


폴더를 나눠놓고 실행시켜서 나타났던 오류였다


cannot read property 'replace' of undefined  이 오류가


이 포스팅의 이유만으로 나타나는 것은 아니고 여러가지 이유가 있겠지만


혹시나 나와 같은 실수를 하는 사람이 있거나 내가 같은 실수를 또 할 것만 같아서


이렇게 포스팅을 한다.



+ Recent posts