Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 정규식 활용
- c3 축 없애기
- centos pyhon 설치
- semanage
- c++ 정규식
- c3 step graph
- python popen
- python subprocess
- selinux port 등록
- telegraf
- regex_search
- gcc 업데이트
- g++ 업데이트
- 1697
- InfluxDB
- snmp test
- python os
- grafana dashboard
- CentOS7
- 정규식 문자열 출력
- c3 second
- snmp
- 백준
- linux시간으로 변경
- 정규식 컴파일
- c3 초
- c3 축 가리기
- influxdb 설치
- subporcess path
- gcc regex
Archives
- Today
- Total
리셋 되지 말자
Not found 오류 구현 본문
응답 200 과 응답 404
response.writeHead(200); // 200을 전송하면, 파일을 잘 전송했다고 하는 약속
response.end(template);
ip주소 오른쪽에 '/'이후로 파일 경로를 지정한다. 이때 파일이 존재하여 클라이언트에 잘 전송했다면 잘 전송했다는 의미로 200을 전송한다.(웹상의 약속이라고 한다.)
반대로 존재하지 않는 파일을 요청하면 404오류를 전송하여 클라이언트에게 알리도록 한다.
- 소스 코드
var http = require('http');
var fs = require('fs');
var url = require('url') // url 모듈을 사용한다
var app = http.createServer(function (request, response) {
var _url = request.url;
var queryData = url.parse(request.url, true).query;
var pathname = url.parse(_url, true).pathname;
var title = queryData.id;
console.log(queryData.id); // 쿼리 스트링 값 확인
console.log(_url); // url 값 확인
// if (_url == '/') {
// //_url = '\\index.html';
// title = 'Welcome';
// }
// if (_url == '/favicon.ico') {
// response.writeHead(404);
// response.end();
// return;
// }
//response.writeHead(200);
// 루트 디렉토리 (/)로부터 존재하는 페이지를 요청하면 페이지 표시
if(pathname==='/'){
fs.readFile('data/' + queryData.id, 'utf8', function (err, description) {
var template = `
<!doctype html>
<html>
<head>
<title>WEB1 - ${title}</title>
<meta charset="utf-8">
</head>
<body>
<h1><a href="/">WEB</a></h1>
<ol>
<li><a href="/?id=HTML">HTML</a></li>
<li><a href="/?id=CSS">CSS</a></li>
<li><a href="/?id=JavaScript">JavaScript</a></li>
</ol>
<h2>${title}</h2>
<p>
${description}
</p>
</body>
</html>
`;
//response.end(fs.readFileSync(__dirname + url));
response.writeHead(200); // 200을 전송하면, 파일을 잘 전송했다고 하는 약속
response.end(template);
});
}else{ // 없는 페이지를 요청하면 404 에러
response.writeHead(404);
response.end('Not found');
}
console.log(url.parse(_url, true));
});
app.listen(80);
'NodeJS > 생활코딩' 카테고리의 다른 글
파일목록 알아내기 (0) | 2020.09.09 |
---|---|
제작-홈페이지 구현 (0) | 2020.09.09 |
파일을 이용해 본문 구현 (0) | 2020.09.08 |
파일 읽기 (0) | 2020.09.08 |
동적 웹 만들기 (0) | 2020.09.08 |
Comments