웹사이트 검색

Debian 8에 Nginx를 설치하는 방법


소개

Nginx는 Apache2의 인기 있는 HTTP 서버 대안입니다. 리버스 프록시, 메일 서버 또는 웹 서버로 사용할 수 있습니다. 2015년 7월 현재 Netcraft 조사에 따르면 Nginx는 현재 시장의 14%를 차지하고 있으며 2007년 이후 증가 추세를 보이고 있습니다.

이 가이드에서는 Debian 8 서버에 Nginx를 설치합니다.

전제 조건

이 자습서를 따르려면 다음이 필요합니다.

  • 새로운 데비안 8.1 드롭릿 1개
  • 이 튜토리얼의 2단계와 3단계에 따라 설정할 수 있는 루트가 아닌 sudo 사용자

달리 명시되지 않는 한 이 자습서의 모든 명령은 sudo 권한이 있는 루트가 아닌 사용자로 실행해야 합니다.

1단계 - Nginx 설치

이 단계에서는 apt-get이라는 내장 패키지 설치 프로그램을 사용합니다. 관리를 획기적으로 단순화하고 깨끗한 설치를 용이하게 합니다.

전제 조건의 일부로 apt-get을 사용하여 apt 패키지 색인을 업데이트하고 sudo 패키지를 설치해야 합니다. 다른 Linux 배포판과 달리 Debian 8은 sudo가 설치된 상태로 제공되지 않습니다.

Nginx는 앞서 언급한 HTTP 서버로, 적은 메모리 사용량으로 큰 로드를 처리하는 데 중점을 둡니다. 설치하려면 다음 명령을 실행하십시오.

  1. sudo apt-get install nginx

Nginx와 가장 널리 사용되는 두 가지 오픈 소스 웹 서버인 Apache2의 차이점에 대한 정보는 이 기사를 참조하십시오.

2단계 - 웹 서버 테스트

이 단계에서는 Nginx 서버에 액세스할 수 있는지 테스트합니다.

웹 브라우저에서 http://your_server_ip에 액세스하여 your_server_ip를 서버의 IP 주소로 바꿉니다. 서버가 실행 중임을 확인하는 기본 Nginx 페이지가 표시되어야 합니다.

웹 브라우저에 대한 액세스 권한이 없는 경우에도 명령줄에서 서버를 테스트할 수 있습니다. 웹 사이트가 외부 세계에 표시되는지 확인하려면 다른 시스템에서 테스트하는 것이 가장 좋습니다. 다음 명령을 실행합니다.

  1. curl your_server_ip

다음 HTML 출력이 표시되어야 합니다.

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx on Debian!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx on Debian!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working on Debian. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a></p>

<p>
      Please use the <tt>reportbug</tt> tool to report bugs in the
      nginx package with Debian. However, check <a
      href="http://bugs.debian.org/cgi-bin/pkgreport.cgi?ordering=normal;archive=0;src=nginx;repeatmerged=0">existing
      bug reports</a> before reporting a new bug.
</p>

<p><em>Thank you for using debian and nginx.</em></p>


</body>
</html>

오류는 다음과 같을 것입니다. 이것을 보지 안 됩니다.

curl: (52) Empty reply from server

3단계 — Nginx 프로세스 관리

이제 웹 서버를 가동하고 실행 중이므로 몇 가지 기본 관리 명령을 검토할 수 있습니다.

웹 서버를 중지하려면 다음을 입력하십시오.

  1. sudo systemctl stop nginx

중지된 웹 서버를 시작하려면 다음을 입력하십시오.

  1. sudo systemctl start nginx

서비스를 중지했다가 다시 시작하려면 다음을 입력합니다.

  1. sudo systemctl restart nginx

단순히 구성을 변경하는 경우 Nginx는 종종 연결을 끊지 않고 다시 로드할 수 있습니다. 이를 위해 다음 명령을 사용할 수 있습니다.

  1. sudo systemctl reload nginx

다음을 입력하여 서버가 재부팅될 때 웹 서버가 자동으로 다시 시작되도록 할 수 있습니다.

  1. sudo systemctl enable nginx

이 구성이 작동하는지 테스트하려면 서버를 다시 시작하십시오.

  1. sudo shutdown -r now

그런 다음 서버가 다시 시작되므로 로그아웃합니다.

1~2분 후에 2단계를 반복하여 재부팅 시 웹 서버가 시작되는지 테스트할 수 있습니다.

서버 루트 및 구성

Nginx를 통해 자신의 페이지나 애플리케이션 서비스를 시작하려면 Nginx 구성 파일과 기본 서버 루트 디렉터리의 위치를 알고 싶을 것입니다.

기본 서버 루트

기본 서버 루트 디렉토리는 /var/www/html입니다. 이 디렉터리에 있는 파일은 웹 서버에서 제공됩니다. 이 위치는 /etc/nginx/sites-enabled/default에 있는 Nginx와 함께 제공되는 기본 서버 블록 구성 파일에 지정됩니다.

서버 블록 구성

Apache의 가상 호스트로 알려진 추가 서버 블록은 /etc/nginx/sites-available에 새 구성 파일을 생성하여 추가할 수 있습니다. 이러한 구성을 활성화하려면 다음을 사용하여 /etc/nginx/sites-enabled에 대한 심볼릭 링크를 만듭니다.

  1. sudo ln -s /etc/nginx/sites-available/site /etc/nginx/sites-enabled/site

sites-enabled 디렉토리의 모든 구성 파일은 Nginx에 의해 로드됩니다.

Nginx 글로벌 구성

기본 Nginx 구성 파일은 /etc/nginx/nginx.conf에 있습니다. 여기에서 Nginx 데몬 프로세스를 실행하는 사용자, Nginx가 실행 중일 때 생성되는 작업자 프로세스 수와 같은 설정을 변경할 수 있습니다.

결론

이제 웹 서버를 설치했으므로 제공할 콘텐츠 유형과 보다 풍부한 경험을 만드는 데 사용할 기술에 대한 많은 옵션이 있습니다.

서버 보안을 위한 추가 옵션을 탐색할 수도 있습니다. 이제 월드 와이드 웹에 공개되었으며 매우 취약하다는 점을 기억하십시오.