SW/리눅스

Ubuntu 18.04 : Nginx 설치 방법, 예제, 명령어

얇은생각 2020. 10. 8. 07:30
반응형

Nginx는 인터넷에서 가장 큰 사이트 중 일부의 로드를 처리하는 무료 오픈 소스 고성능 HTTP 및 역방향 프록시 서버입니다. Nginx는 독립 실행형 웹 서버로 사용할 수 있으며 Apache 및 기타 웹 서버의 역방향 프록시로 사용할 수 있습니다. 

Apache에 비해 Nginx는 많은 수의 동시 연결을 처리할 수 있으며 연결당 메모리 설치 공간이 작습니다.

이번 포스팅에서는 Ubuntu 18.04 Nginx를 설치하는 데 필요한 단계를 설명합니다.

 

 

필수 구성 요소

튜토리얼로 시작하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인하고 포트 80 또는 443에서 Apache 또는 다른 웹 서버를 실행하지 않아야 합니다.

 

 

Nginx 설치

Nginx 패키지는 기본 Ubuntu 리포지토리에서 사용할 수 있습니다. 설치가 매우 간단합니다.

먼저 패키지 목록을 업데이트한 후 Nginx를 설치합니다.

sudo apt update
sudo apt install nginx

 

 

설치가 완료되면 Nginx 서비스가 자동으로 시작됩니다. 다음 명령을 사용하여 서비스 상태를 확인할 수 있습니다.

● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2018-04-29 06:43:26 UTC; 8s ago
     Docs: man:nginx(8)
  Process: 3091 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 3080 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 3095 (nginx)
    Tasks: 2 (limit: 507)
   CGroup: /system.slice/nginx.service
           ├─3095 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           └─3097 nginx: worker process

 

 

 

방화벽 구성

UFW를 사용하여 방화벽을 관리한다고 가정하면 HTTP(80) HTTPS(443) 포트를 열어야 합니다. 두 포트에 대한 규칙이 포함된 'Nginx Full' 프로필을 활성화하면 이 작업을 수행할 수 있습니다.

sudo ufw allow 'Nginx Full'

 

 

상태 유형을 확인하려면 다음을 수행합니다.

sudo ufw status

 

 

출력은 다음과 같습니다.

Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
Nginx Full                 ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
Nginx Full (v6)            ALLOW       Anywhere (v6)

 

 

 

설치 테스트

Nginx 설치를 테스트하려면 http://YOUR_를 엽니다.원하는 브라우저에서 IP를 선택하면 아래 이미지에 표시된 기본 Nginx 랜딩 페이지가 표시됩니다.

 

Ubuntu 18.04 : Nginx 설치 방법, 예제, 명령어

 

 

 

Nginx 서비스 관리

다른 systemd 서비스와 동일한 방식으로 Nginx 서비스를 관리할 수 있습니다.

Nginx 서비스를 중지하려면 다음을 실행합니다.

sudo systemctl stop nginx

 

 

다시 시작하려면 다음을 입력합니다.

sudo systemctl start nginx

 

 

Nginx 서비스를 다시 시작하려면 다음을 수행합니다.

sudo systemctl restart nginx

 

 

일부 구성을 변경한 후 Nginx 서비스를 다시 로드합니다.

sudo systemctl reload nginx

 

 

기본적으로 Nginx 서비스는 부팅 시 시작됩니다. 부팅 시 시작하도록 Nginx 서비스를 사용하지 않도록 설정하려면 다음을 수행합니다.

sudo systemctl disable nginx

 

 

다시 활성화하려면 다음을 수행합니다.

sudo systemctl enable nginx

 

 

 

Nginx 구성 파일의 구조 및 사례

- 모든 Nginx 구성 파일은 /etc/nginx 디렉터리에 있습니다.

- 기본 Nginx 구성 파일은 /etc/nginx/nginx.conf입니다.

- Nginx 구성을 보다 쉽게 유지 관리할 수 있도록 각 도메인에 대해 별도의 구성 파일을 생성하는 것이 좋습니다. 필요한 만큼의 서버 블록 파일을 가질 수 있습니다.

- Nginx 서버 블록 파일은 /etc/nginx/sites-available 가능한 디렉토리에 저장됩니다. 이 디렉토리에 있는 구성 파일은 /etc/nginx/sites-enable 디렉토리에 연결되지 않는 한 Nginx에서 사용하지 않습니다.

- 서버 블록을 활성화하려면 사이트 사용 가능한 디렉토리의 구성 파일 사이트에서 사이트 사용 가능 디렉토리로 symlink(포인터)를 만들어야 합니다.

- 표준 이름 지정 규칙을 따르는 것이 좋습니다. 예를 들어 도메인 이름이 mydomain.com인 경우 구성 파일의 이름을 /etc/nginx/vmx-available/mydomain.com.conf로 지정하십시오.

- /etc/nginx/snippets 디렉토리에는 서버 블록 파일에 포함할 수 있는 구성 스니펫이 포함되어 있습니다. 반복 가능한 구성 세그먼트를 사용하는 경우 해당 세그먼트를 캡처로 리팩터링하고 서버 블록에 코드 조각 파일을 포함할 수 있습니다.

- Nginx 로그 파일(access.log error.log) /var/log/nginx 디렉토리에 있습니다. 서버 블록마다 다른 액세스 및 오류 로그 파일을 갖는 것이 좋습니다.

- 도메인 문서 루트 디렉터리를 원하는 위치로 설정할 수 있습니다. webroot의 가장 일반적인 위치는 다음과 같습니다.

    - /home/<user_name>/<site_name>
    - /var/varw/<site_name>
    - /var/varw/properties/<site_name>
    - /opt/<site_name>

 

 

 

결론

Ubuntu 18.04 서버에 Nginx를 설치했습니다. 이제 애플리케이션 배포를 시작할 준비가 되었습니다.

반응형