wp-setup

[워드프레스 설치 4] Nginx로 Ubuntu22.04에 설치하기

Nginx는 뭘까? 한마디로 요약하면 웹 서버 프로그램이다. 저번에 서버 컴퓨터에 리눅스 우분투 (Linux ubuntu)라는 운영체제를 설치했다. (설치하는 방법을 보고 싶다면 여기를 클릭!) 이제 그곳에 웹 서버들이 상호작용을 할 수 있는...

Dark / Light
Liberta 9월19, 2023

Nginx는 뭘까?

한마디로 요약하면 웹 서버 프로그램이다.

저번에 서버 컴퓨터에 리눅스 우분투 (Linux ubuntu)라는 운영체제를 설치했다. (설치하는 방법을 보고 싶다면 여기를 클릭!)

이제 그곳에 웹 서버들이 상호작용을 할 수 있는 프로그램을 설치해 주는 거다. 어려운 전문용어와 설명들은 일단 이곳에서는 언급하지 않겠다. 기본적으로 “아 이런 개념이 있구나! 이것을 설치해야 홈페이지가 작동되겠구나!” 하는 정도로만 이해하자.

Nginx(엔진x)와 Apache(아파치)?

웹 서버 프로그램이라는 것은 동일하다. 하지만 워드프레스를 직접 설치하려고 마음 먹은 사람들은 이 둘중에 뭘 해야 좋을지 결정하지 못하고 맴도는 사람들도 많을 것이다.

결론적으로 나는 엔진x를 선택했다.

 

  • 엔진x?
  1. 동시 접속자가 많다해도 추가 생성비용이 들지 않는다.
  2. cpu소모량이 아파치보다 적다.
  3. 효율성이 아파치에 비해 좋다.
  4. .htaccess(시스템 파일) 을 쓸 수 없어서 다소 불편할 수 있다. (워드프레스 설치 시 볼 수 있는 파일)
  • 아파치?
  1. 대용량(동시 접속자가 많을 시) 처리 시한계점이 발생한다.
  2. 간혹 요청 처리를 하지 못하고 대기 상태가 있을 때가 있다.
  3. 효율성이 조금 떨어질 수 있다.
  4. .htaccess(시스템 파일)을 사용할 수 있다.

 

최대한 쉽게 차이점을 적어봤다. (비동기식, 동기식, 스레드 이런 전문용어는 언급하지 않았다. 들으면 더 헷갈리기 때문이다.)

우선 위에 보면 왠지 엔진x가 더 빠르고 좋아 보인다. 그렇다.

하지만 우리가 엄청난 트래픽이 생기지 않고서야 아파치와 엔진x의 차이는 체감상 느낄 수 없다. 그래서 아파치를 선택해도 된다. 그런데 나는 왜 엔진x를 선택했냐면 새로운 걸 써보고 싶었다. (그 이유가 정말 전부다)

여기서 한 가지 알아야 할 점은 엔진x는 .htaccess 파일을 사용할 수 없다는 것이다.

워드프레스를 다 설치하고 나서 시스템 파일을 만져야 할 상황에서 .htaccess 파일을 봐야 하는데 엔진x는 이 파일 자체가 없다. 다른 파일에 다른 언어로 들어가 있어서 방법을 우회해야 한다. 또는 아예 사용하지 못한다. 이런 부분이 걱정된다면 아파치를 설치해도 문제는 없다.

설치해보자

ubuntu에 엔진x 설치 과정

자 이제 엔진x를 하기로 결정했다면 아래 방법만 그대로 따라오면 된다.

 

  • 라이트 세일에 접속한 후 >_ 아이콘을 클릭해서 우분투 서버에 접속하자.우분투 서버 접속하기
  • sudo apt update라고 적어주고 엔터! (설치된 앱들을 업데이트해주는 작업이다)
  • sudo apt update

    ubuntu 앱 업데이트하기

  • 아래 명령어를 그대로 적어주고 마지막에 y를 입력하고 엔터쳐주자.
  • sudo apt-get install nginx

    엔진x 설치하기

  • sudo ufw list라고 적고 엔터 치면 밑에 4가지 목록이 뜬다. (현재 사용 가능한 서비스 목록)
  • sudo ufw app list

    현재 사용가능한 방화벽 확인하기

  • 현재는 이 서비스들이 닫혀 있기 때문에 열어주는 작업을 해줄거다.
    아래 명령어를 그대로 적어주고 엔터쳐주자.
  • sudo ufw allow 'Nginx full'

    엔진xfull 열어주기

  • 똑같이 아래 명령어를 쳐주고 엔터 쳐주자. 엔진x full의 현재 상태는 inactive라고 되어있을 건데 닫혀있는 상태라고 보면 된다.
  • sudo ufw status

    full의 현재 상태는 닫혀있다.

  • 이제 활성화를 해줄 차례이다. 명령어를 아래와 같이 입력한 후 y를 치고 엔터 치자. 그럼 아래와 같이 문구가 뜬다.
  • sudo ufw enable

    활성화 작업을 완료하기

  • 그리고 활성화가 잘 됐는지 아래 명령어를 쳐보면 엔진x full이 정상적으로 active 되어있는 걸 볼 수 있다.
  • sudo ufw status

    활성화 후 상태 다시보기

  • 아래의 명령어를 쳤을 때 active : active (running)이라고 초록불이 들어오면 잘 작동되고 있다는 뜻이다.
  • sudo systemctl status nginx

    엔진x 시스템 상태 확인하기

  • open SSH도 함께 활성화해주자. (위에 이미 시스템 활성화를 해주었기 때문에 복잡한 과정 없이 아래 명령어만 치면 된다)
  • sudo ufw allow 'openSSH'

    openssh 활성화하기

  • 마지막으로 서비스 활성화 상태를 확인해 보자. 그럼 엔진 x fullopenSSH가 정상적으로 allow 되었다면 성공이다.
  • sudo ufw status

    엔진x full, openSSH 확인하기

  • 이제 서버 프로그램 설치가 끝났다! 인터넷창을 열고 내 고정ip를 입력하면 엔진x가 설치된 화면을 볼 수 있다.엔진x 설치 완료 화면

왜 엔진x full만 활성화 한거지?

아까 설치 과정에서 ufw app list에서 사용가능한 서비스 4가지(엔진x full, 엔진x http, 엔진x https, openSSH)가 있었다.

요즘은 네이버 아닌 다른 홈페이지에 들어가 주소를 보게 되면 맨 앞에 자물쇠 모양이 있다. 그건 https라는 것이다.

그래서 전체 주소를 보게 되면 https://www.iliberta.com 이런 식으로 되어있는데 위의 4가지 중 http는 현재 보안상의 이유로 사용하지 않는다. 만약 http를 쓰는 곳이 있다면 홈페이지로 바로 접속되지 “신뢰할 수 없는 홈페이지”라며 뜨게 된다.

그렇다 하더라도 http, https 두 개를 전부 열어줘야 하는데 엔진 x full은 바로 그 두 가지를 동시에 포함하고 있기 때문에 이것만 활성화해주면 되는 것이다.

엔진x full = 엔진x http + 엔진x https

마지막으로

정말 생 초짜도 아예 웹에 관해 모르던 사람도 여기까지 설치하고 나면 “아~ 웹이 이렇게 돌아가는 거구나”라는 뭔가의 감은 생기게 될 거다.

항상 처음이 어렵지 막상 하고 나면 그렇게 별것 아니다. 검은색 화면에 흰 글씨로 한국어도 아닌 영어로 죽죽 내려가는 걸 보면 겁부터 먹게 되는 건 어쩔 수 없지만 조금만 보면 그냥 영단어일 뿐이다.

애초에 영어가 전 세계 공용어라 영어로 개발되었다 뿐이지 한국말이 세계 공용어였다면 모든 명령어가 한글이었을 것이다.

그게 맞기도 하고 그렇게 생각하면 뭐 사실 겁먹었던 거에 비해 정말 별것 없다. 홈페이지에 내 고정 ip를 입력하고 들어갔을 때 웰컴 투 엔진 x가 뜨는 화면을 보고 있으면 얼마나 나 자신이 뿌듯해지면 앞으로의 설치도 그다지 어렵게 생각되지 않으리라 본다.

누구에게나 처음은 있다. 하지만 우리는 모두 할 수 있다.

워드프레스 설치 다음 편에서는

오늘 서비스 활성화했던 것을 이어서 https를 도메인에 붙여보는 작업을 해볼 거다.

처음에 나는 워드프레스까지 모두 설치 후 맨 마지막에 이걸 하다가 서버가 잘못돼서 싹 지우고 처음부터 다시 했던 경험이 있다. 설치 순서 과정도 굉장히 중요한 것 같다. 내가 겪었던 시행착오를 토대로 해서 실패하지 않고 가장 쉽게 설치하는 방법을 공유하고 있다.

혹시 안되는 부분이 있다면 언제든지 댓글에서 질문하면 된다!

Comment

name *

*는 필수 입력입니다 (e-mail은 공개되지 않습니다)

Related posts

TOP