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
- callback function
- Python
- 오픈소스
- 테스트
- github
- Microsoft
- 웹디자인
- 마이크로소프트
- 콜백 함수
- 개발환경
- 제이쿼리
- AngularJS
- 마소
- 인턴
- Ajax
- node.js
- CSS
- 크로스브라우징
- npm
- 750R
- JQuery
- CoffeeScript
- non-blocking
- 빅데이터
- MongoDB
- git
- NoSQL
- 자바스크립트
- Javascript
Archives
- Today
- Total
Inspired World
Node.js 에서 NODE_ENV 값으로 배포/개발 환경설정하기 본문
보통 Node.js 를 실행할 때
NODE_ENV 값을 이용해서
production ( 배포 ) 모드
development ( 개발 ) 모드
이렇게 두 가지로 나누어서 실행하게 되는데요.
Node.js 프레임워크인 Express 의 경우
production 모드 일때는
파일 캐싱, 에러 메시지 감추기 등 배포의 적합한 환경 설정을 하구요.
development 모드 일 때는
파일 캐싱 방지, 디버그를 위한 상세한 에러 메시지 보이기 등
개발에 도움을 줄 수 있는 환경으로 설정을 해줍니다.
하지만 직접 이 값을 알아 내고 싶을 때가 있는데요.
이럴 때는 Express 에서 전체 앱을 총괄하는 역할을 맡고 있는 root 디렉토리의 app.js 에서 첫 줄에
이렇게 해주면 NODE_ENV 가 따로 지정이 안되어 있더라도 development 모드로 지정되게 해줄 수 있습니다.
이후 이 앱 소스 어디에서나 ( require 된 파일 포함 )
위 처럼 NODE_ENV 값에 따라 하고 싶은 일을 함으로써 개발과 배포용 소스를 따로 분리해서 코딩 할 수 있습니다.
혹시 NODE_ENV 값을 설정하는 방법을 모르신다면
Linux, Mac OS X 기준으로
Terminal, Shell 창에서
이렇게 해주시면 NODE_ENV 값을 설정 할 수 있게 됩니다.
한가지 더!
Terminal, Shell 창이 아닌 Windows 운영체제에서 Node.js 를 구동하실 때에는
이렇게 조금 다른 명령어로 NODE_ENV 값을 설정할 수 있습니다.
NODE_ENV 값을 이용해서
production ( 배포 ) 모드
development ( 개발 ) 모드
이렇게 두 가지로 나누어서 실행하게 되는데요.
Node.js 프레임워크인 Express 의 경우
production 모드 일때는
파일 캐싱, 에러 메시지 감추기 등 배포의 적합한 환경 설정을 하구요.
development 모드 일 때는
파일 캐싱 방지, 디버그를 위한 상세한 에러 메시지 보이기 등
개발에 도움을 줄 수 있는 환경으로 설정을 해줍니다.
하지만 직접 이 값을 알아 내고 싶을 때가 있는데요.
이럴 때는 Express 에서 전체 앱을 총괄하는 역할을 맡고 있는 root 디렉토리의 app.js 에서 첫 줄에
process.env.NODE_ENV = ( process.env.NODE_ENV && ( process.env.NODE_ENV ).trim().toLowerCase() == 'production' ) ? 'production' : 'development';
이렇게 해주면 NODE_ENV 가 따로 지정이 안되어 있더라도 development 모드로 지정되게 해줄 수 있습니다.
이후 이 앱 소스 어디에서나 ( require 된 파일 포함 )
if( process.env.NODE_ENV == 'production' ) {
console.log("Production Mode");
} else if( process.env.NODE_ENV == 'development' ) {
console.log("Development Mode");
}
위 처럼 NODE_ENV 값에 따라 하고 싶은 일을 함으로써 개발과 배포용 소스를 따로 분리해서 코딩 할 수 있습니다.
혹시 NODE_ENV 값을 설정하는 방법을 모르신다면
Linux, Mac OS X 기준으로
Terminal, Shell 창에서
export NODE_ENV=production
이렇게 해주시면 NODE_ENV 값을 설정 할 수 있게 됩니다.
한가지 더!
Terminal, Shell 창이 아닌 Windows 운영체제에서 Node.js 를 구동하실 때에는
set NODE_ENV=production
이렇게 조금 다른 명령어로 NODE_ENV 값을 설정할 수 있습니다.
'Node.js' 카테고리의 다른 글
Node.js (Express Framework) 앞단에 Nginx 사용하기 (2) | 2012.03.17 |
---|---|
Node.js 개발 생산성을 높이기 위한 도구 "Supervisor" (5) | 2012.03.13 |
JavaScript 및 Node.js에서 XSS 공격 막기 (0) | 2012.03.01 |
JavaScript 및 Node.js, 전역 객체에 접근하기 (0) | 2012.03.01 |
Node.js 에서 require를 활용해 소스를 정리해보자 (0) | 2012.02.27 |
Comments