Select Page

Ubuntu 12.04 에서 Nginx 1.4.0 설치 및 업그레이드

우분투 서버에 딸려 나오는 Apache 2.2.x 웹서버에서 nginx 1.2.x 웹서버로 갈아탄 후, 계속해서 마이너 업데이트가 나올 때 마다 바로바로 업데이트를 해주었는데, 오늘 nginx news 사이트를 확인해 보니 1.3.x 개발자 버전의 안정화 버전(Stable Version)인 1.4 버전이 공식 배포되고 있었다. 바로 어제 MariaDB 관련 패키지를 무심코 업데이트 했다가 괜한 시간 낭비를 한 경험이 있어서 이번에는 일단 테스트 서버에서 먼저 프로덕션 서버의 환경설정 및 Add-on 들을 테스트 해 보았다. 다행히 눈에 띄는 에러 또는 호환성 문제는 발견되지 않아, 프로덕션 서버 역시 nginx 1.2.8 버전에서 1.4.0 로 업데이트를 완료하였다.

nginx-logo

경험상, PHP/Mysql 기반의 CMS 플레폼을 이용하고 있다면 nginx 업데이트는 크게 긴장할 필요는 없다. 물론, 특정 nginx 의 Module/Add-on 이 새로운 버전과 호환되지 않을 수도 있지만, PHP/Mysql 메이저 업데이트시 가끔 볼 수 있는 GB 용량의 에러로그, 공백 페이지, 데이터베이스 연결에러 등의 황당한 결과는 잘 발생하지 않는다. 다음은 필자가 이번에 nginx 1.2.8 버전에서 1.4.0 버전으로 업데이트 할 때 실행한 일련의 Shell 명령들이다. 1.2.x 사용자 중 1.4.0 버전으로 업데이트 하려는 사용자들에게 참고가 되길 바란다.

** nginx 1.4.0 변경내용

 ** nginx 1.4.0 다운로드 및 컴파일/설치

4번째 라인은 컴파일을 하기 전에 환경 설정을 해주는 옵션이며, 서버 사용 목적에 따라 옵션을 변경해 줄 수 있다. 필자의 경우는, 임의의 폴더내에 저장된 컨텐츠를 목록으로 보여주는 autoindex 모듈과 보안상 취약점이 있는 ssi 모듈을 제외시켰고, CDN 서비스를 이용하고 있으므로 realip 모듈을 추가하였다. mp4 모듈은 동영상 파일을 스트리밍 하기 위해, gzip_static 모듈은 이미 gzip 으로 압축된 파일은 그대로 전송하기 위해,  ngx_cache_purge 는 proxy 및 fastcgi cache 등의 purge 를 위해 별도로 추가시켰다.

** nginx 1.4.0 버전으로 재실행

컴파일 및 설치가 완료되었다면, 현재 실행 중인 1.2.8 버전을 종료시키고, 새롭게 컴파일된 1.4.0 버전을 실행시킨다. (USR2, WINCH 시그널을 이용하면, nginx 웹서버를 중단하지 않고 업그레이드 할 수 있다. 자세한 내용은 여기)

About The Author

ssumer

Web Developer at University of Hawaii at Manoa, 저서: Mac QnA 실무 테크닉, Mac OS X 길라잡이(정보 문화사), Mac OS X 실무테크닉(성안당) / 기술 감역: 인텔 리얼센스 SDK 센서 프로그래밍(정보 문화사), 예제가 가득한 PHP 프로그래밍(정보 문화사), iPhone 가이드(성안당)

Leave a reply

Your email address will not be published. Required fields are marked *