본문 바로가기

공부하자/서버관리

AWS 라이트세일에서 nginx 로 서브도메인 설정하기(centos 7)

회사에서 쓰는 개발용으로 쓰는 서버가 있는데 해당 서버에 이런 저런 서비스가 많이 설치 되어 있다.

기존에는 해당 서비스를 http://아이피:8080 이런식으로 사용하고 있었는데 아이피를 외우기도 피곤하고 포트를 외우는 것도 피곤해서 서브 도메인을 사용하기로 했다.

 

우선 AWS 라이트세일 화면에서 서브도메인을 설정해 준다.

이미 AWS에서 연결중인 도메인이 있었기 때문에 해당 도메인에 서브도메인만 추가해주면 끝이다.

 

라이트세일 Domain & DNS 이동하면 연결된 도메인을 확인할 수 있다.

 

 

DNS Records 탭에서 Add record를 해서 스샷처럼 입력해주고 SAVE

 

 

 

 

이후 서버에 접속하여 아래 명령어로 nginx를 설치 해 준다.

sudo yum install nginx

 

https://www.nginx.com/resources/wiki/start/topics/tutorials/install/

 

Install | NGINX

There are currently two versions of NGINX available: stable (1.20.x), mainline (1.21.x). The mainline branch gets new features and bugfixes sooner but might introduce new bugs as well. Critical bugfixes are backported to the stable branch. In general, the

www.nginx.com

 

yum으로 설치했더니 1.2.1 버전이 설치 되었다.

 

 

설치가 다 되면 서브도메인 설정을 해주면 되는데

/etc/nginx/conf.d 경로에다가 .conf 를 만들어주기만 하면 된다.

 

 

conf.d 경로 설정 변경

더보기

해당 경로를 읽게 만드는 설정은 /etc/nginx.conf 파일을 열면 다음과 같이 확인할 수 있다.

/etc/nginx.conf 파일 내용. /etc/nginx/conf.d 폴더의 모든 .conf파일을 읽게 되어 있다.

 

 

vi 로 conf 확장자를 가진 파일을 만들어서(파일이름은 아무거나) 아래와 같이 작성하고 wq로 저장하고 나오면 된다.

 

내용 설명

더보기

listen 80 은 브라우저에서 80으로 요청이 들어올 때 처리한다는 것
server_name 은 해당 url로 요청이 들어올 때 처리한다는 것이다.

location / 는 루트 경로라고 생각하면 쉬운데 해당 경로로 요청이 들어오면 location  괄호안의 내용을 처리한다는 뜻이다.
내부의 proxy_pass 항목은 요청이 들어오면 해당 url로 요청을 전송한다는 뜻이다.

 

 

아래 명령으로 nginx를 재실행 하면 설정한 서브도메인으로 페이지가 열리는 것을 확인할 수 있다.

systemctl restart nginx

 

 

13* Permission 오류가 나는 경우 아래와 같이 해주면 해결됨

https://stackoverflow.com/questions/23948527/13-permission-denied-while-connecting-to-upstreamnginx