Tag Archives: nginx

이미지 캐시 서버 구축하기 (나만의 CloudFlare 구축하기)

HYEONG HWAN, MUN/ 10월 14, 2018/ 미분류/ 31 comments

이 글에서는 나만의 이미지 캐시 서버를 구축하여, 사이트 속도를 높이고 부하를 줄이는 방법에 대해 설명합니다. 당신의 사이트가 해외 서버를 이용 중이라면 이 방법을 통해 아주 높은 속도 향상효과를 얻을 수 있습니다.   CDN 캐시 서비스 업체인 CloudFlare 를 목표로 삼고, 비슷하게 동작하도록 만들어 보겠습니다.   구축 방법 해외망이 좋은 서버 고르기. 2018년 현재 한국에서 해외망이 가장 좋은 서버는 AWS 입니다. AWS 의 상품 중에서 저가형인 Lightsail 을 이용하도록 하겠습니다. 공식사이트 : https://lightsail.aws.amazon.com 운영체제는 Ubuntu 16.04 LTS 또는 Ubuntu 18.04 LTS 를 선택하세요. 이미지 캐시 서버는 CPU와 Memory를 거의 사용하지 않습니다. 오직 스토리지 용량만 고려하여 선택하세요. 5달러 상품 또는 10달러 상품 선택하시면 됩니다. AWS Lightsail 은 기본적으로 서버에 유동IP 를 할당하기 때문에, 따로 고정IP 를 발급받아 연결해주어야 합니다. 적당히 웹사이트 콘솔 보고 연결하세요.…

HSTS 삭제하는 방법 (서버 및 크롬브라우저)

HYEONG HWAN, MUN/ 12월 31, 2017/ 미분류/ 4 comments

HSTS 는 HTTP Strict Transport Security 의 약자입니다. 브라우저에게 HTTPS를 강요하면서 통신의 보안을 향상시키는 방법입니다. 서버에서 HSTS 관련 헤더를 보내면 브라우저는 해당 기간동안 무조건 HTTPS 를 사용합니다.   HSTS 를 적용하는 방법. (서버에서) 이 구문을 nginx 설정파일에 적용하면 접속자의 브라우저에 hsts 가 자동 적용됩니다. HSTS 를 적용 해제하는 방법. (서버에서) 적용시간을 0으로 설정하면 됩니다. HSTS 를 적용 해제하는 방법. (브라우저에서) 1. 크롬브라우저 크롬 주소창에 chrome://net-internals/#hsts 입력.

한번에 끝내는 AWS Amazon Linux 웹서버세팅 (아마존리눅스 서버세팅)

HYEONG HWAN, MUN/ 12월 17, 2017/ 미분류/ 10 comments

리눅스라는 컴퓨터 운영체제가 있습니다. GPLv2 를 따르며 오픈소스이며, 매우 오래된 역사를 가지고 있습니다. 오랜 시간을 통해 검증이 된 운영체제이죠. 리눅스의 파생 운영체제로는 Ubuntu, Debian, CentOS, Fedora, Amazon Linux, Android, AIX, Redhat 등이 있습니다. Ubuntu, Debian 는 데비안 계열의 운영체제이며 최신기술의 빠른 적용과 자동화가 특징인 운영체제입니다. CentOS, Fedora, Amazon Linux, Android, AIX, Redhat 은 CentOS 계열이라고 하는데, 이 운영체제들 끼리는 명령어 및 폴더의 구조가 비슷합니다. CentOS 및 Fedora 는 무료 오픈소스인데, 최신기술 적용이 심각하게 느립니다. Redhat 은 유료 운영체제입니다. 1년에 120만원쯤 사용료가 있습니다. Android 는 모바일 운영체제입니다. AIX 는 IBM 서버에서만 쓸 수 있는 운영체제입니다. Amazon Linux 는 Amazon Web Service 에서만 쓸 수 있는 운영체제입니다.   패키지 업데이트가 엄청나게 느린 CentOS 와는 다르게, Amazon Linux 가  최신 소프트웨어 설치를 제공하므로,…

NGINX Gzip 설정하기

HYEONG HWAN, MUN/ 12월 16, 2017/ 미분류/ 6 comments

* GZIP 이란? Gzip 은 GNU zip 의 줄임말이며 리눅스/유닉스 시스템에서 널리쓰이는 압축 소프트웨어 이다. 웹서버 통신을 할 떄 데이터를 gzip 압축하여 전송하면 속도가 더 빨라진다. * gzip 사용 안할 경우 : [서버에서 HTML 데이터 전송] -> [클라이언트 브라우저가 표시] * gzip 을 사용할 경우 : [서버에서 HTML 데이터를 압축 후 전송] -> [클라이언트 브라우저가 압축을 풀고 표시] gzip 을 사용할 경우, 웹서버와 클라이언트(브라우저)의 CPU 사용량이 약간 늘어난다. 요즘 서버나 PC의 경우 충분히 고사양이기 때문에 gzip cpu 사용량은 무시해도 된다.(0.1% 미만) 압축 전송이기 때문에 전송속도가 빨라지고 , 트래픽량이 줄어든다. 특히, 국가간 트래픽이나 느린 인터넷 환경에서, 속도가 빨라진 것을 크게 느낄 수 있다. 너무 작은 파일은 그냥 전송하는게 더 빠르고, 이미 충분히 압축된 파일은 gzip 을 해도 용량이 별로 안줄어들기 때문에…

nginx 서버에서 gzip 을 사용하여 전송속도를 향상시키기

HYEONG HWAN, MUN/ 7월 15, 2017/ 미분류/ 2 comments

이 글을 통해 nginx 웹서버에서 gzip 이라는 압축전송을 통해 전송속도 향상시키는 방법에 대해 알아보도록 하겠습니다.   일반적으로 웹 페이지는 다음과 같은 과정으로 표시됩니다. (서버에서) 코드 생성 -> 전송 -> (웹브라우저가) 코드 표시   블로그의 이 글을 Chrome 브라우저에서 -> 오른쪽 클릭 -> 검사 -> Network 탭 -> Doc 필터 -> 본문 선택 -> Timing 선택 하시면 다음과 같은 화면을 볼 수 있습니다. 웹브라우저 코드 표시는 편의상 0초가 걸린다고 하겠습니다. 대부분의 정상적인 상황이라면 전송 받자마자 표시되는게 맞습니다.     이 때 gzip 이라는 압축 후 전송을 사용하면 (서버에서) 코드 생성 -> 코드 압축 -> 전송 -> (웹브라우저가) 코드 압축해제 -> (웹브라우저가) 코드 표시 웹 브라우저가 하는 쪽은 0초가 걸린다고 가정합니다. 만약 문제가 있다면 HTML 문서를 최적화 하도록 합시다.     실제…

맥 내부에 apache/nginx 개발서버 세팅하기

HYEONG HWAN, MUN/ 12월 19, 2016/ 미분류/ 5 comments

  지인 요청으로 글을 작성합니다. 본문의 설명은 Mac OS X 기준으로 작성하였지만 Windows OS 환경에서도 적용할 수 있습니다.   개발하는데 맥을 사용하면 매우 편리합니다. 대부분의 서버는 리눅스로 구동되며, 맥 또한 리눅스 기반이기 때문에 명령어도 유사하고, 서버 작업 관련 호환성 또한 매우 좋습니다. 이 글에서는 일반사업체/개발회사/에이전시/팀프로젝트 에서 적용할 수 있는 “맥 내부에 apache/nginx 개발서버 세팅하는 방법”에 대해서 설명하도록 하겠습니다.   1. 대부분의 실무에서 사용하는 작업 방식 실제 운영하는 서버 (라이브서버) 한대를 두고 직접 그곳에서 작업한다. (mysite.com 을 바로바로 작업) 작업 중에는 서버 오류가 발생할 수 있으며, 고객이 이용중 장애를 겪을 수 있다.   2. 더 나은 실무 작업방식 서버는 같은데 분리된 도메인의 (dev.mysite.com) 사이트를 만들고 복제된 사이트에서 개발&테스트 한 후 실제 사이트에 반영하는 방법. 실제 작업 서버에 도메인만 분리후 작업한다. 공유 리소스가 있을…

[Ubuntu] Let’s Encrypt 를 사용하여 무료로 SSL 사이트를 구축하는 방법

HYEONG HWAN, MUN/ 10월 2, 2016/ 미분류/ 106 comments

웹은 계속 발전하고 있으며, 여러 새로운 기술이 끊임 없이 등장하고 있다. 이 글에서는 웹 기술 중 하나인 SSL (Secure Socket Layer) 에 대해서 이야기 해 보고자 한다. < 그림 : OSI Model 에서 SSL 의 위치 >   정확히 말해서 SSL 은 전송계층과 (Transport Layer) 응용계층 (Application Layer) 사이에서 동작한다. Transport 에서 패킷을 받으면 -> SSL 에서 패킷의 암호를 해독하고 -> Application 에게 전달하는 것이다. SSL 을 세션계층(Layer 5), 표현계층(Layer 6)으로 분류하는 사람도 있고, 응용계층(Layer 7)으로 분류하는 사람도 있다. 나름대로 주장에 대한 근거가 일리 있으니 여기서는 따로 정확히 분류하지는 않겠다. 확실한건 Transport(Layer 4) 와 Application(Layer 7) 의 사이라는 것.   I) 어떻게 SSL 은 암호화 통신을 하는가? – 쉽게 말하자면 SSL 은 “보안인증서” 라고 말할 수 있다. – 사람으로 비유하자면 보안인증서는 암호화코드가 내장된 주민등록증이라고…

Ubuntu 16.04 LTS 웹서버 세팅방법 (Nginx + PHP7-FPM + MariaDB)

HYEONG HWAN, MUN/ 11월 28, 2015/ 미분류/ 246 comments

Last updated : 2017-06-12 [주의] 기존의 Ubuntu 14.04 세팅방법 글은 : https://blog.lael.be/post/4886 로 이전되었습니다. 글 비밀번호는 ubuntu 입니다. [주의] 이 글은 Ubuntu 16.04 LTS 에 맞추어 작성되었습니다. [정보] 회사 내에 전문 담당자가 없거나 리눅스에 서투르신 경우, 작업의뢰를 신청하세요. 프리랜서 이전/세팅 대행 : https://www.xetown.com/freelancer/3456 . 당신의 요청이 합당하다면 저분이 의뢰를 받아주실 겁니다. #16.10.04 무료 보안인증서(SSL) 적용방법이 추가됨 무료 보안인증서 설치방법이 추가되었습니다. HTTPS 사용을 원하신다면, 본문을 다 읽으신 후 다음의 글로 이동해주세요. https://blog.lael.be/post/5107 * Nginx 가 아닌 Apache 로 PHP 웹서버를 구축하시려면 https://blog.lael.be/post/73 글로 이동하세요. (쉽고 편함) * Ubuntu 에서 JSP 웹서버 세팅을 원하시면 https://blog.lael.be/post/858 글로 이동하세요. * Ubuntu 에서 PHP와 JSP를 동시 구동하고 싶으시면 https://blog.lael.be/post/1023 글로 이동하세요. * Ubuntu 가상서버호스팅을 찾는 중이라면 https://blog.lael.be/post/44 글로 이동하세요. Nginx 공식사이트는 http://nginx.org/ 이다. 엔진엑스 라고 부른다. Igor Sysoev (이고르 시소에브) 라는 러시아 개발자가 개발했으며, 이 소프트웨어의 주요 개발 목표는 “동시접속…