본문 바로가기

Web

nginx proxy_pass와 hosts로 간단한 로컬 설정

보통 로컬에서 웹 개발을 할 때는 ' localhost:3000 ' 이런 식으로 localhost에 포트번호를 명시해서 브라우저를 통해 접속한다.

(본인이 학생이었을 때는 잘 몰라서 대부분이 이처럼 작업했다.)

그런데 이 경우 문제가 될 수 있는 것은, 만약 로컬에서 서버를 여러 개 띄우면 각 서버에 접속할 때마다 localhost 뒤에 다른 포트번호를 일일이 쳐줘야 한다. 북마크로 지정해서 누르는 방법이 있긴 하지만..

이제 각 서버를 구분해서 접속하는 방법을 알아보려고 한다. 윈도우 설치 드라이브가 C임을 가정하고 진행한다.

(여기서 설명하는 내용이 이후 문제가 되거나 위험한 방법이 아닌지는 확인되지 않았다.)


1. hosts 설정

C:\Windows\System32\drivers\etc\hosts

위 파일에 내용을 추가해야하는데, 기본적으로 위 파일은 일반 사용자가 수정할 수 없게 되어 있다.

수정할 수 있는 2가지 방법을 간단하게만 제공하고 넘어간다. 1번이 나중에 수정하기도 편하기 때문에 추천하지만, 혹시나 찾지 못한다면 2번으로 진행해도 된다.

 1) 오른쪽 마우스 클릭, 속성 -> 보안 탭 -> 편집 -> 현재 접속중인 윈도우 계정명 클릭 -> 모두 권한 허용 클릭 -> 확인 후 오른쪽 마우스 클릭, 연결 프로그램 -> 메모장

 2) cmd 혹은 powershell을 관리자 권한으로 켜기 -> etc 까지 접속 -> notepad hosts


hosts가 열렸으면 제일 하단에 

127.0.0.1 사용하고자 하는 도메인 명

이와 같이 입력 후 저장한다. 웬만하면 현재 사용 중이지 않은 도메인으로 넣기를 추천한다.

(이후 예시로는 local.nginx-test.com 으로 사용)


2. 새로운 설정파일 생성

nginx를 설치한 경로 아래 conf 폴더에 새로운 파일을 생성한다.

예시 파일명 및 경로 (C:\nginx\conf\local-nginx-test.conf)

위 첨부는 예시로 적은 파일 명의 내용이다. 간략히 내용을 정리하면

 1) server_name이 local.nginx-test.com , 80번 포트로 제공

 2) charset 은 utf-8

 3) http://localhost:3000 으로 proxy 적용

 4) proxy_http_version은 HTTP/1.1


3. nginx.conf에 추가 (C:\nginx\conf\nginx.conf)

파일을 열고 2번에서 생성한 파일(local-nginx-test.conf)을 설정에 넣어주는 단계이다.

http {
include mime.types;
default_type application/octet-stream;

기본 설정으로 위처럼 들어가 있을 것이다.

위 라인 바로 아래에 include local-nginx-test-conf 를 입력해준다.


4. nginx 설정파일 리로드

터미널을 열고 C:\nginx 경로로 이동한 다음 'nginx -s reload'를 입력한다.

현재 실행 중인 nginx에 설정 파일만 다시 로드한다는 의미이다.


위 과정이 끝나면 서버를 구동한 후 다음과 같이 local.nginx-test.com 으로 접속해보자


각 서버 별로 위 과정을 반복하면 로컬에서 편리하게 자신의 서버에 접속할 수 있다.

'Web' 카테고리의 다른 글

Windows에서 nginx 설치 방법  (0) 2018.07.10