[Nginx] 01. Nginx 기초

Date:     Updated:

카테고리:

태그:


01. Nginx 설치


■ 필수 구성 요소 설치

sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring


■ nginx 공식 서명 키 가져오기

curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
    | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null


■ repository 설정

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list


■ nginx 설치

sudo apt update

sudo apt install nginx



02. Nginx 설치 확인


■ 버전 확인

nginx -v


■ 실행 중인지 확인

ps -ef | grep nginx


■ nginx 기본 페이지 출력 확인

ps -ef | grep nginx



03. Nginx의 중요 파일, 디렉터리 및 명령


■ NGINX 파일 및 디렉토리

파일 및 디렉터리 설명
/etc/nginx/ NGINX 서버의 기본 설정 디렉토리로, 서버 동작 방식을 정의하는 설정 파일들이 위치함
/etc/nginx/nginx.conf NGINX 서비스의 기본 설정 파일로, 전역 설정(워커 프로세스, 로깅, 동적 모듈 로딩 등)을 포함하고 있으며, 다른 설정 파일들을 참조함
/etc/nginx/conf.d/ 기본 HTTP 서버 설정 파일이 위치하는 디렉토리로, .conf로 끝나는 파일들이 nginx.conf의 http 블록에 포함되며 설정 파일을 간결하게 유지하기 위해 include 문을 사용하는 것이 좋다.
/var/log/nginx/ NGINX의 기본 로그 위치로, access.log와 error.log 파일이 존재한다. (access.log는 요청 기록을, error.log는 오류 이벤트와 디버그 정보를 포함함.)


■ NGINX 명령

명령 설명
nginx -h NGINX 도움말 메뉴를 표시
nginx -v NGINX 버전을 표시
nginx -V NGINX 버전, 빌드 정보 및 구성 인수를 표시하여 NGINX 바이너리에 포함된 모듈을 보여줌
nginx -t NGINX 설정을 테스트함
nginx -T NGINX 설정을 테스트하고 검증된 설정을 화면에 출력함. 지원 요청 시 유용함.
nginx -s signal NGINX 마스터 프로세스에 신호를 전송함. 전송 가능한 신호로는 stop(즉시 종료), quit(요청 처리 후 종료), reload(설정 재로드), reopen(로그 파일 재개방)이 있음.



04. 정적 컨텐츠 제공


$ mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.old


$ cat <<EOF > /etc/nginx/conf.d/default.conf
server {
    # NGINX가 포트 80에서 수신하도록 설정하며, default_server 매개변수로 이 서버를 기본 서버로 지정
    listen 80 default_server; 

    # server_name 지시어는 요청할 호스트 이름을 정의
    # 기본 서버로 설정된 경우, 도메인이 없어도 server_name 지시어를 생략할 수 있음
    server_name www.example.com; 

    # location 지시어는 URL 경로에 따른 설정을 정의하며, '/'로 모든 요청을 매칭
    location / {
        # root 지시어는 정적 파일을 찾을 디렉토리를 지정. 요청 URI는 root 값에 추가되어 파일을 찾음
        root /usr/share/nginx/html;
        # index 지시어는 URI에 추가 경로가 없을 경우 확인할 기본 파일을 명시
        index index.html index.htm;
    }
}
EOF


# Nginx 서버를 중지하지 않고 구성을 정상적으로 다시 로드함
$ nginx -s reload

NGINX 카테고리 내 다른 글 보러가기

댓글 남기기