카테고리 없음

CentOS 7 : Nginx 설치 방법, 명령어, 예제

얇은생각 2020. 9. 22. 07:30
반응형

CentOS 7 : Nginx 설치 방법, 명령어, 예제

 

Nginx는 인터넷에서 가장 큰 사이트의 로드를 처리하는 무료 오픈 소스 고성능 HTTP 및 역방향 프록시 서버입니다.

Nginx는 독립 실행형 웹 서버로 사용할 수 있으며 Apache 및 기타 웹 서버의 역방향 프록시로 사용할 수 있습니다.

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

이 튜토리얼에서는 CentOS 7에 Nginx를 설치하고 관리하는 방법에 대해 설명합니다.

 

 

 

필수 구성 요소

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

 

 

 

CentOS에 Nginx를 설치

다음 단계에 따라 Centre에 Nginx를 설치합니다.OS 서버는 다음과 같습니다.

 

01. Nginx 패키지는 EPEL 리포지토리에서 사용할 수 있습니다. EPEL 리포지토리가 아직 설치되어 있지 않은 경우 다음을 입력하여 이를 수행할 수 있습니다.

        sudo yum install epel-release

 

02. 다음 yum 명령을 입력하여 Nginx를 설치합니다.

        sudo yum install nginx

EPEL 리포지토리에서 패키지를 처음 설치하는 경우 yum에서 EPEL GPG 키를 가져오라는 메시지가 표시될 수 있습니다.

Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Importing GPG key 0x352C64E5:
Userid     : "Fedora EPEL (7) <epel@fedoraproject.org>"
Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5
Package    : epel-release-7-9.noarch (@extras)
From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Is this ok [y/N]:

 

그런 경우 y를 입력하고 Enter 키를 누릅니다.

 

03. 설치가 완료되면 다음을 사용하여 Nginx 서비스를 활성화하고 시작합니다.

        sudo systemctl enable nginx

        sudo systemctl start nginx

 

다음 명령을 사용하여 Nginx 서비스의 상태를 확인합니다.

    sudo systemctl status nginx

 

출력은 다음과 같아야 합니다.

● nginx.service - The nginx HTTP and reverse proxy server
  Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
  Active: active (running) since Mon 2018-03-12 16:12:48 UTC; 2s ago
  Process: 1677 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 1675 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 1673 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
Main PID: 1680 (nginx)
  CGroup: /system.slice/nginx.service
          ├─1680 nginx: master process /usr/sbin/nginx
          └─1681 nginx: worker process

 

04. 서버가 방화벽에 의해 보호되는 경우 HTTP(80) 및 HTTPS(443) 포트를 모두 열어야 합니다.

다음 명령을 사용하여 필요한 포트를 엽니다.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

 

 

05. Nginx 설치를 확인하려면 http://YOUR_IP를 엽니다. 선택한 브라우저에서  아래 이미지에 표시된 기본 Nginx 시작 페이지가 표시됩니다.

CentOS 7 : Nginx 설치 방법, 명령어, 예제

 

 

 

systemctl로 Nginx 서비스를 관리

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

 

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

      sudo systemctl stop nginx

 

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

      sudo systemctl start nginx

 

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

       sudo systemctl restart nginx

 

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

        sudo systemctl reload nginx

 

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

        sudo systemctl disable nginx

 

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

        sudo systemctl enable nginx

 

 

 

Nginx 구성 파일의 구조 및 모범 사례

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

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

- Nginx 구성을 보다 쉽게 유지 관리할 수 있도록 각 도메인에 대해 별도의 구성 파일을 생성하는 것이 좋습니다.

- 새 Nginx 서버 블록 파일은 .conf로 끝나야 하며 /etc/nginx/conf.d 디렉토리에 저장되어야 합니다. 필요한 만큼의 서버 블록을 가질 수 있습니다.

- 예를 들어 도메인 이름이 mydomain.com인 경우 구성 파일의 이름을 /etc/nginx/conf.d/mydomain.com.conf로 지정하는 것이 좋습니다.

- 도메인 서버 블록에서 반복 가능한 구성 세그먼트를 사용하는 경우, /etc/nginx/snipets라는 디렉터리를 만들어 해당 세그먼트를 스니펫으로 리팩터링하고 서버 블록에 코드 조각 파일을 포함하는 것이 좋습니다.

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

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

 

 

 

결론

CentOS 7에 Nginx를 성공적으로 설치했습니다. 이제 애플리케이션 배포를 시작하고 Nginx를 웹 또는 프록시 서버로 사용할 수 있습니다. 

반응형