본문 바로가기

node

(5)
윈도우, 리눅스에서 서버 재부팅시 프로그램 자동실행 설정하기 (feat. next.js) 이번에 윈도우, 리눅스 등 모든 서버에서 재부팅 시 프로그램이 자동으로 실행되도록 설정했다.기존에는 pm2로 관리를 했었는데, 서버가 꺼질 때마다 수동으로 프로그램을 시작해줘야 했다.  서버가 꺼질때마다 다시 시작하는 것도 귀찮았는데, 꺼졌다는 걸 인지하지 못했을 때 오는 민원 전화가 더 무서웠다🥲그래서 이러한 상황을 방지하기 위해 자동실행 설정을 시작했다. 그 과정을 고생한거 정리할 겸 기록 겸으로 블로그에 작성한다. 우선은 윈도우부터!윈도우는 nssm을 이용해 배치파일을 서비스에 등록하는 방법을 사용했다.  바쁜 분들은 성공과정으로 고고 > 정리 부분 보면 됨    1. Window1) 실패 과정 이전 프로젝트 했을 당시, window 서버에서 nssm을 통해 자동 실행을 등록했었다.그래서 이번에도..
[Error] Next.js unable to verify the first certificate error unable to verify the first certificate Next.js에서 fetch를 통해 api를 불러오는데 위와 같은 에러가 발생했다. gpt에 물어보니까 SSL 인증서 검증에 문제가 있음을 나타내는 에러라고 했다. 혹시나 서버에서 일어난 문제일까 생각해봤는데, Postman에서 호출해보니까 에러 없이 정상적으로 출력됐다. process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'; 스택오버플로에서 보니까 위 코드처럼 env 설정을 하면 된다길래 utile에 따로 정리해놨던 환경변수 파일에 넣었다. 바로 정상적으로 작동했다. 기본적으로 Node.js에서 HTTPS를 요청하면, 서버의 SSL/TSL 인증서가 유효한지 확인한다. 인증서가 유효애햐 안전한 연결이 보..
[Node] Node 서버 구축 방법, Express.js 서버 구축 방법, nodemon 1. 노드 서버 구축 방법 노드로 서버를 구축하는 방법은 간단하다. 자바에선 아파치 같은 서버를 따로 설치해서 서버를 구현해야 하지만, 노드 같은 경우엔 간단한 코드로도 서버를 구동하는 것이 가능하다. //server.js const http = require('http'); const server = http.createServer((req, res) => { console.log('server 구현') }) server.listen(8080) 이런 식으로 모듈을 사용하면, 서버를 생성할 수 있다. 서버를 생성한 후, server.listen에 원하는 포트번호를 적어주면 해당 포트에서 서버를 바로 실행할 수 있다. const server = http.createServer((req, res) => { ..
[Node] npm 이란? npm 설치 방법과 사용방법, yarn 1. npm 이란? npm(Node Package Manager)은 라이브러리를 관리하는 역할을 한다. npm을 통해 다양한 노드 모듈(node module)을 다운로드할 수 있고, 버전을 관리할 수도 있다. 1) npm 설치 방법 npm -v npm은 node를 다운로드하면 자동으로 설치된다. 위 명령어를 통해 현재 설치된 npm 버전을 확인할 수 있다. 2) npm 명령어 ① npm init npm init npm init은 package.json을 생성할 때 사용한다. //package.json { "name": "test", //프로젝트 이름 "version": "1.0.0", //프로젝트 정보 "description": "test-project", //프로젝트 설명 "main": "app.js"..
[Node] 노드 모듈 (Node Module) 이란? exports 와 module.exports 의 차이점 1. 모듈 (Module) 모듈은 여러 함수들의 집합을 의미한다. 애플리케이션을 구성하는 개별적인 요소이며, 보통 필요한 기능이 있을 때 가져와서 사용한다. 기능별로, 파일 단위로 분리되어 있기 때문에 유지보수성과 효율성이 높다. 1) 내장모듈과 외장모듈 노드 모듈은 내장모듈과 외장모듈로 나눠진다. 내장모듈은 node.js에서 제공되는 모듈로, 노드를 설치하기만하면 사용할 수 있다. 반면, 외장모듈은 일반 개발자들이 만든 모듈로 npm을 통해 설치해야 사용이 가능하다. 2) CommonJS 자바스크립트의 모듈화 명세를 만든 대표적인 그룹으로, 현재 node의 표준이 되는 명세이다. 간단하게 말하면 자바스크립트 파일 간의 의존성을 어떻게 가지게 할지 정해준다. //counter.js let count = ..