Ubuntu 18.04에 Nginx[Quick Start] 설치 방법

Ubuntu 18.04에 Nginx[Quick Start] 설치 방법

2022-06-01 last update

9 minutes reading Ubuntu Quickstart Ubuntu 18.04 Nginx

소개


Nginx는 세계에서 가장 유행하는 웹 서버 중 하나로 인터넷에서 가장 크고 데이터가 가장 많은 사이트를 위탁 관리한다.대부분의 경우, 아파치보다 자원에 더 우호적이며, 웹 서버나 역방향 에이전트로 사용할 수 있다.
이 가이드에서는 Ubuntu 18.04 서버에 Nginx를 설치하는 방법을 설명합니다.이 강좌의 더 자세한 버전은 How To Install Nginx on Ubuntu 18.04 을 참조하십시오.

선결 조건


이 안내서를 시작하기 전에 다음 조건을 충족해야 합니다.
  • Ubuntu 18.04 서버와 sudo 권한을 가진 일반 비루트 사용자.또한 비필수 포트를 차단하기 위해 기본 방화벽을 사용해야 합니다.일반 사용자 계정을 설정하고 방화벽을 설정하는 방법을 배우려면 저희 initial server setup guide for Ubuntu 18.04 를 참조하십시오.
  • 사용 가능한 계정이 있으면 비root 사용자로 로그인하여 시작하십시오.

    1단계 – Nginx 설치


    Nginx는 Ubuntu의 기본 저장소에서 사용할 수 있기 때문에 apt 패키지 시스템으로 설치할 수 있습니다.
    로컬 패키지 인덱스 업데이트:
    1. sudo apt update
    Nginx 설치:
    1. sudo apt install nginx

    2단계 – 방화벽 조정


    필수 서버 설치 강좌를 따르는 경우 UFW 방화벽이 활성화됩니다.다음 명령을 사용하여 사용 가능한 ufw 응용 프로그램 구성 파일을 확인합니다.
    1. sudo ufw app list
    Output
    Available applications: Nginx Full Nginx HTTP Nginx HTTPS OpenSSH
    가장 엄격한 프로필을 사용합니다. 이 프로필은 사용자가 설정한 데이터와 포트의 데이터80를 허용합니다.
    1. sudo ufw allow 'Nginx HTTP'
    변경 내용 확인:
    1. sudo ufw status
    Output
    Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Nginx HTTP ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Nginx HTTP (v6) ALLOW Anywhere (v6)

    3단계 – 웹 서버 확인


    다음을 입력하여 서비스가 실행 중인지 확인systemdinit 시스템을 확인합니다.
    1. systemctl status nginx
    Output
    ● 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 Fri 2018-04-20 16:08:19 UTC; 3 days ago Docs: man:nginx(8) Main PID: 2369 (nginx) Tasks: 2 (limit: 1153) CGroup: /system.slice/nginx.service ├─2369 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; └─2380 nginx: worker process
    기본 Nginx 로그인 페이지에 액세스하여 IP 주소를 통해 소프트웨어가 제대로 작동하는지 확인합니다.
    http://your_server_ip
    
    기본 Nginx 로그인 페이지가 표시됩니다.

    4단계 – 서버 블록 설정(권장)


    Nginx 웹 서버를 사용할 때 아파치의 가상 호스트와 같은 서버 블록을 사용하여 설정 상세 정보를 봉인하고 한 서버에서 여러 개의 도메인을 호스팅할 수 있습니다.우리는 example.com라는 도메인을 만들 것입니다. 그러나 당신은 자신의 도메인 이름으로 바꾸어야 합니다.Digital Ocean을 사용하여 도메인 이름을 설정하는 방법에 대한 자세한 내용은 Dellintroduction to DigitalOcean DNS을 참조하십시오.example.com 플래그를 사용하여 -p 디렉토리를 생성하여 필요한 부모 디렉토리를 만듭니다.
    1. sudo mkdir -p /var/www/example.com/html
    디렉토리에 대한 소유권 할당:
    1. sudo chown -R $USER:$USER /var/www/example.com/html
    만약 umask 값을 수정하지 않았다면, 웹 루트 디렉터리의 권한은 정확해야 하지만, 다음 내용을 입력하여 확보할 수 있습니다.
    1. sudo chmod -R 755 /var/www/example.com
    index.html 또는 원하는 편집기를 사용하여 예제 nano 페이지를 만듭니다.
    1. nano /var/www/example.com/html/index.html
    내부에 다음 예제 HTML을 추가합니다.
    /var/www/example.com/html/index.html
    <html>
        <head>
            <title>Welcome to Example.com!</title>
        </head>
        <body>
            <h1>Success!  The example.com server block is working!</h1>
        </body>
    </html>
    
    완료되면 파일을 저장하고 닫습니다./etc/nginx/sites-available/example.com에 새 서버 블록:
    1. sudo nano /etc/nginx/sites-available/example.com
    새 디렉토리와 도메인 이름을 업데이트하려면 다음 구성 블록에 붙여넣습니다.
    /etc/nginx/sites available/example.일반 도메인 이름 형식
    server {
            listen 80;
            listen [::]:80;
    
            root /var/www/example.com/html;
            index index.html index.htm index.nginx-debian.html;
    
            server_name example.com www.example.com;
    
            location / {
                    try_files $uri $uri/ =404;
            }
    }
    
    완료되면 파일을 저장하고 닫습니다.
    파일에서 sites-enabled 디렉토리에 대한 링크를 작성하여 파일을 활성화합니다.
    1. sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
    두 서버 블록이 현재 설정되어 있으며 listenserver_name 명령에 따라 요청에 응답하도록 구성됩니다.
  • example.com: example.comwww.example.com 요청에 응답합니다.
  • default: 응답 포트80에 다른 두 블록과 일치하지 않는 요청을 합니다.
  • 다른 서버 이름을 추가하여 발생할 수 있는 해시통 메모리 문제를 피하기 위해 /etc/nginx/nginx.conf 파일의 단일 값을 조정해야 합니다.파일을 열려면 다음과 같이 하십시오.
    1. sudo nano /etc/nginx/nginx.conf
    server_names_hash_bucket_size 명령을 찾아 행 주석을 취소하기 위해 # 기호를 삭제합니다.
    /etc/nginx/nginx.형태
    ...
    http {
        ...
        server_names_hash_bucket_size 64;
        ...
    }
    ...
    
    구문 오류 테스트:
    1. sudo nginx -t
    변경 사항을 활성화하려면 Nginx를 다시 시작합니다.
    1. sudo systemctl restart nginx
    Nginx는 도메인 이름에 대한 서비스를 제공해야 합니다.네비게이션 http://example.com 을 통해 이 점을 테스트할 수 있습니다. 여기에서 다음과 같은 내용을 보실 수 있습니다.

    결론


    현재 웹 서버를 설치했습니다. 서비스할 내용 유형과 더 풍부한 체험을 만드는 기술에 대해 많은 옵션이 있습니다.
    더 완전한 응용 프로그램 창고를 구축하려면 how to configure a LEMP stack on Ubuntu 18.04 의 이 글을 보십시오.