목차
소개
nginx의 기본 개념
서버 블록의 심층 분석
정의와 기능
작동 방식
리버스 프록시의 본질
사용의 예
기본 사용
고급 사용
일반적인 오류 및 디버깅 팁
성능 최적화 및 모범 사례
요약
운영 및 유지보수 엔진스 고급 NGINX 구성 : 서버 블록 마스터 링 및 리버스 프록시

고급 NGINX 구성 : 서버 블록 마스터 링 및 리버스 프록시

Apr 06, 2025 am 12:05 AM
역방향 프록시 nginx 구성

NGINX의 고급 구성은 서버 블록 및 리버스 프록시를 통해 구현 될 수 있습니다. 1. 서버 블록을 사용하면 여러 웹 사이트를 한쪽으로 실행할 수있게되면 각 블록은 독립적으로 구성됩니다. 2. 리버스 프록시는 요청을 백엔드 서버로 전달하여로드 밸런싱 및 캐시 가속도를 실현합니다.

고급 NGINX 구성 : 서버 블록 마스터 링 및 리버스 프록시

소개

인터넷의 바다에서 Nginx는 의심 할 여지없이 파괴 할 수없는 전함입니다. 고성능과 유연성에 대해 개발자와 운영 직원의 사랑을받습니다. 그러나 어떻게이 군함을 진정으로 탐색하고 최대 잠재력을 달성 할 수 있습니까? 이 기사에서는 Nginx의 고급 구성 기술, 특히 서버 블록 및 리버스 프록시의 응용 프로그램에 대한 심층적 인 논의를 안내합니다. 이 기사를 읽으면 복잡한 네트워크 환경에서 쉽게 완화 할 수 있도록 NGINX를 세련된 방식으로 구성하는 방법을 배웁니다.

nginx의 기본 개념

NGINX는 고성능 HTTP 서버 및 리버스 프록시 서버로서 이벤트 중심, 비동기 및 비 차단 처리 메커니즘입니다. 이것은 Nginx가 특히 높은 동시 요청을 처리하는 데 특히 적합합니다. 서버 블록은 NGINX 구성의 핵심 개념으로, 하나의 nginx 인스턴스에서 여러 서버 구성을 정의 할 수 있으므로 도메인 이름 또는 IP 주소의 가상 호스팅 기능을 구현할 수 있습니다. Reverse Proxy는 클라이언트 요청을 Nginx를 통해 백엔드 서버로 전달하는 기술로,로드 밸런싱 및 캐시 가속도에 종종 사용됩니다.

예를 들어 간단한 NGINX 구성이 다음과 같습니다.

 http {
    서버 {
        80;
        server_name example.com;
        위치 / {
            루트 /var/www/example.com;
            인덱스 index.html;
        }
    }
}
로그인 후 복사
로그인 후 복사

이 코드는 포트 80에 장려하는 서버를 정의하고 example.com 도메인 이름에 대한 요청에 응답하며 요청의 루트 디렉토리를 /var/www/example.com 으로 가리 킵니다.

서버 블록의 심층 분석

서버 블록은 NGINX 구성의 핵심 부분으로 동일한 NGINX 인스턴스에서 여러 웹 사이트 또는 서비스를 실행할 수 있습니다. 각 서버 블록은 청취 포트, 도메인 이름, 로그 파일 등을 독립적으로 구성하여 높은 유연성을 달성 할 수 있습니다.

정의와 기능

서버 블록의 정의는 매우 간단하지만 기능은 매우 강력합니다. 하나의 NGINX 인스턴스에서 여러 웹 사이트 또는 서비스를 실행할 수 있습니다. 이것은 여러 웹 사이트를 호스팅하는 서버 관리자에게 매우 유용한 기능입니다.

예를 들어, 다음과 같은 두 개의 다른 서버 블록을 정의 할 수 있습니다.

 http {
    서버 {
        80;
        server_name example1.com;
        위치 / {
            루트 /var/www/example1.com;
            인덱스 index.html;
        }
    }

    서버 {
        80;
        server_name example2.com;
        위치 / {
            루트 /var/www/example2.com;
            인덱스 index.html;
        }
    }
}
로그인 후 복사

작동 방식

Nginx가 요청을 수신하면 먼저 요청의 호스트 헤더를 확인한 다음 server_name 지시문에 따라 적절한 서버 블록과 일치합니다. 서버 블록이 일치하지 않으면 Nginx는 기본 서버 블록을 사용하여 처리합니다. 예상치 못한 동작으로 이어질 수 있으므로 구성 할 때 특별한주의가 필요합니다.

리버스 프록시의 본질

Reverse Proxy는 Nginx의 또 다른 강력한 기능입니다. 클라이언트 요청을 백엔드 서버로 전달하여로드 밸런싱, 캐시 가속도 및 기타 기능을 실현할 수 있습니다.

정의와 기능

리버스 프록시의 정의는 클라이언트 요청을 nginx를 통해 백엔드 서버로 전달하는 것입니다. 이 기능은 백엔드 서버의 실제 IP 주소를 숨기고 추가 보안을 제공하며로드 밸런싱을 달성하고 시스템 신뢰성 및 성능을 향상시킬 수 있다는 것입니다.

예를 들어 간단한 리버스 프록시 구성이 다음과 같습니다.

 http {
    상류 백엔드 {
        서버 로컬 호스트 : 8080;
        서버 로컬 호스트 : 8081;
    }

    서버 {
        80;
        server_name example.com;
        위치 / {
            proxy_pass http : // 백엔드;
            proxy_set_header 호스트 $ 호스트;
            proxy_set_header xeal-ip $ remote_addr;
        }
    }
}
로그인 후 복사

이 코드는 backend 라는 업스트림 서버 그룹을 정의하고 2 개의 백엔드 서버를 포함한 다음 모든 요청을이 서버 그룹으로 전달합니다.

작동 방식

NGINX가 리버스 프록시 역할을하면 클라이언트로부터 요청을 수신 한 다음 구성을 기반으로 요청을 백엔드 서버로 전달합니다. NGINX는 다양한로드 밸런싱 알고리즘 (폴링, 최소 연결 등)에 따라 백엔드 서버를 선택하여 효율적인 요청 배포를 달성 할 수 있습니다.

사용의 예

기본 사용

간단한 서버 블록 구성부터 시작하겠습니다.

 http {
    서버 {
        80;
        server_name example.com;
        위치 / {
            루트 /var/www/example.com;
            인덱스 index.html;
        }
    }
}
로그인 후 복사
로그인 후 복사

이 코드는 포트 80에 장려하는 서버를 정의하고 example.com 도메인 이름에 대한 요청에 응답하며 요청의 루트 디렉토리를 /var/www/example.com 으로 가리 킵니다.

고급 사용

이제 서버 블록과 리버스 프록시를 결합한보다 복잡한 구성을 살펴 보겠습니다.

 http {
    상류 백엔드 {
        서버 로컬 호스트 : 8080;
        서버 로컬 호스트 : 8081;
    }

    서버 {
        80;
        server_name example.com;
        위치 / {
            proxy_pass http : // 백엔드;
            proxy_set_header 호스트 $ 호스트;
            proxy_set_header xeal-ip $ remote_addr;
        }
    }

    서버 {
        80;
        server_name api.example.com;
        위치 / {
            proxy_pass http : // 백엔드;
            proxy_set_header 호스트 $ 호스트;
            proxy_set_header xeal-ip $ remote_addr;
        }
    }
}
로그인 후 복사

이 코드는 두 개의 서버 블록을 정의합니다. 하나는 exece.com이고 다른 하나는 api.example.com에 대해 정의됩니다. 둘 다 동일한 백엔드 서버 그룹 backend 사용하지만 필요에 따라 다르게 구성 할 수 있습니다.

일반적인 오류 및 디버깅 팁

Nginx를 구성 할 때의 일반적인 오류는 다음과 같습니다.

  • 구성 파일 구문 오류 : nginx -t 명령을 사용하여 구성 파일의 구문을 확인하십시오.
  • 서버 블록 매칭 문제 : server_name 이 올바르게 구성되어 있는지 확인하십시오. 그렇지 않으면 요청이 잘못 처리 될 수 있습니다.
  • 리버스 프록시 구성 오류 : proxy_pass 디렉토리가 올바른 업스트림 서버 그룹을 가리키고 필요한 헤더 정보가 설정되어 있는지 확인하십시오.

성능 최적화 및 모범 사례

실제 애플리케이션에서 최적의 성능을 위해 NGINX 구성을 최적화하는 방법은 무엇입니까? 몇 가지 제안은 다음과 같습니다.

  • 캐시 사용 : Nginx는 캐시 정적 컨텐츠를 지원하여 응답 속도를 크게 향상시킬 수 있습니다.
  • 작업자 프로세스 수 조정 : 서버의 CPU 코어 수에 따라 worker_processes 명령을 조정하여 동시 처리 기능을 향상시킬 수 있습니다.
  • GZIP 압축 활성화 : GZIP 압축을 활성화하여 전송 된 데이터 양을 줄이고 전송 속도를 높일 수 있습니다.

예를 들어 다음은 최적화 된 NGINX 구성 예입니다.

 http {
    gzip on;
    gzip_vary on;
    gzip_proxied;
    gzip_comp_level 6;
    gzip_types 텍스트/일반 텍스트/CSS 응용 프로그램/json 응용 프로그램/javaScript 텍스트/XML 응용 프로그램/XML 응용 프로그램/XML RSS Text/JavaScript;

    proxy_cache_path/var/cache/nginx 레벨 = 1 : 2 Keys_Zone = 정적 : 10M 비활성 = 24h max_size = 1g;

    서버 {
        80;
        server_name example.com;
        위치 / {
            루트 /var/www/example.com;
            인덱스 index.html;
            try_files $ uri $ uri/ = 404;
        }

        위치 ~* \. (jpg | Jpeg | png | gif | ico | css | js) $ {
            1y를 만료합니다.
            log_not_found off;
            add_header 캐시 제어 "public, no transform";
            proxy_cache 정적;
            proxy_cache_valid 200 1d;
            proxy_cache_use_sale 오류 시간 초과 invalid_header 업데이트 http_500 http_502 http_503 http_504;
        }
    }
}
로그인 후 복사

이 코드는 GZIP 압축을 가능하게하고 정적 파일 캐싱을 설정하며 캐시 정책을 조정하여 NGINX 성능을 향상시킵니다.

요약

이 기사를 통해 고급 NGINX 구성의 본질, 특히 서버 블록 및 리버스 프록시의 적용을 마스터해야합니다. 초보자이든 숙련 된 운영 및 유지 보수 담당자이든,이 팁을 사용하면 Nginx 서버를 더 잘 관리하고 최적화하는 데 도움이됩니다. NGINX 구성은 강력한 기능을 진정으로 발휘하기 위해 지속적인 연습과 최적화가 필요한 예술입니다.

위 내용은 고급 NGINX 구성 : 서버 블록 마스터 링 및 리버스 프록시의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. 크로스 플레이가 있습니까?
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

역방향 프록시 및 로드 밸런싱을 위해 FastAPI와 함께 Nginx를 사용하는 방법 역방향 프록시 및 로드 밸런싱을 위해 FastAPI와 함께 Nginx를 사용하는 방법 Aug 01, 2023 am 09:44 AM

역방향 프록시 및 로드 밸런싱을 위해 FastAPI와 함께 Nginx를 사용하는 방법 소개: FastAPI와 Nginx는 매우 널리 사용되는 두 가지 웹 개발 도구입니다. FastAPI는 고성능 Python 프레임워크이고 Nginx는 강력한 역방향 프록시 서버입니다. 이 두 도구를 함께 사용하면 웹 애플리케이션의 성능과 안정성을 향상시킬 수 있습니다. 이 기사에서는 역방향 프록시 및 로드 밸런싱을 위해 FastAPI와 함께 Nginx를 사용하는 방법을 알아봅니다. 역세대란 무엇인가

Nginx 역방향 프록시의 액세스 제어 및 흐름 제어 적용 Nginx 역방향 프록시의 액세스 제어 및 흐름 제어 적용 Jun 10, 2023 pm 06:58 PM

Nginx는 리버스 프록시 서버로도 널리 사용되는 고성능 오픈 소스 다목적 웹 서버입니다. 역방향 프록시 서버는 로드 밸런싱, 고가용성, 액세스 제어 및 트래픽 제어와 같은 기능을 제공하는 데 사용될 수 있습니다. 이 기사에서는 Nginx 리버스 프록시의 액세스 제어 및 흐름 제어 적용을 소개합니다. 1. 액세스 제어 IP 주소 블랙리스트/화이트리스트 Nginx는 IP 주소 블랙리스트 또는 화이트리스트를 구성하여 요청에 대한 액세스 제어를 구현할 수 있습니다. 블랙리스트에 있는 IP 주소는 접근이 거부되고, 화이트리스트에 있는 IP 주소는 거부됩니다.

Gin 프레임워크의 역방향 프록시 및 요청 전달에 대한 자세한 설명 Gin 프레임워크의 역방향 프록시 및 요청 전달에 대한 자세한 설명 Jun 23, 2023 am 11:43 AM

웹 애플리케이션의 급속한 발전으로 점점 더 많은 기업이 개발에 Golang 언어를 사용하는 경향이 있습니다. Golang 개발에서는 Gin 프레임워크를 사용하는 것이 매우 인기 있는 선택입니다. Gin 프레임워크는 fasthttp를 HTTP 엔진으로 사용하고 가볍고 우아한 API 디자인을 갖춘 고성능 웹 프레임워크입니다. 이 글에서는 Gin 프레임워크에서의 역방향 프록시 적용과 요청 전달에 대해 자세히 알아볼 것입니다. 역방향 프록시의 개념 역방향 프록시의 개념은 프록시 서버를 사용하여 클라이언트를 만드는 것입니다.

정적 웹 페이지 액세스를 가속화하기 위한 Nginx 역방향 프록시 캐시 구성 정적 웹 페이지 액세스를 가속화하기 위한 Nginx 역방향 프록시 캐시 구성 Jul 04, 2023 pm 06:09 PM

정적 웹 페이지 액세스 가속화를 달성하기 위한 Nginx 역방향 프록시 캐시 구성 소개: 인터넷의 급속한 발전으로 인해 액세스 속도는 웹 사이트 운영에 있어 매우 중요한 요소가 되었습니다. 웹 페이지의 액세스 속도를 향상시키기 위해 Nginx 역방향 프록시 캐싱 기술을 사용하여 웹 페이지를 가속화할 수 있습니다. 이 기사에서는 Nginx를 사용하여 정적 웹 페이지를 가속화하기 위해 역방향 프록시 캐시를 구성하는 방법을 소개합니다. Nginx 역방향 프록시 캐시 구성: Nginx 설치: 먼저 apt-ge를 통해 수행할 수 있는 Nginx 서버를 설치해야 합니다.

Nginx 프록시 관리자를 사용하여 HTTPS 프로토콜에서 역방향 프록시를 구현하는 방법 Nginx 프록시 관리자를 사용하여 HTTPS 프로토콜에서 역방향 프록시를 구현하는 방법 Sep 26, 2023 am 08:40 AM

NginxProxyManager를 사용하여 HTTPS 프로토콜에서 역방향 프록시를 구현하는 방법 최근 몇 년 동안 인터넷의 인기와 응용 프로그램 시나리오의 다양화로 인해 웹 사이트 및 응용 프로그램의 액세스 방법이 점점 더 복잡해졌습니다. 웹사이트 액세스 효율성과 보안을 향상시키기 위해 많은 웹사이트에서는 사용자 요청을 처리하기 위해 역방향 프록시를 사용하기 시작했습니다. HTTPS 프로토콜의 역방향 프록시는 사용자 개인 정보를 보호하고 통신 보안을 보장하는 데 중요한 역할을 합니다. 이 기사에서는 NginxProxy를 사용하는 방법을 소개합니다.

Nginx 오류 페이지 구성, 웹사이트 실패 프롬프트 미화 Nginx 오류 페이지 구성, 웹사이트 실패 프롬프트 미화 Jul 04, 2023 pm 01:33 PM

Nginx 오류 페이지 구성, 웹사이트 오류 메시지 미화 웹사이트 운영 중에 서버 오류나 기타 오류가 발생하는 것은 불가피합니다. 이러한 문제로 인해 사용자는 웹사이트에 정상적으로 액세스할 수 없습니다. 사용자 경험과 웹사이트 이미지를 개선하기 위해 Nginx 오류 페이지를 구성하여 웹사이트 오류 메시지를 아름답게 만들 수 있습니다. 이 글에서는 Nginx의 오류 페이지 구성 기능을 통해 오류 페이지를 사용자 정의하는 방법을 소개하고 코드 예제를 참조로 제공합니다. 1. Nginx 구성 파일을 수정하려면 먼저 Nginx 구성을 열어야 합니다.

웹 사이트 액세스 속도를 향상시키기 위한 Nginx 역방향 프록시 캐시 구성 웹 사이트 액세스 속도를 향상시키기 위한 Nginx 역방향 프록시 캐시 구성 Jul 04, 2023 pm 10:01 PM

웹 사이트 액세스 속도를 향상시키기 위한 Nginx 역방향 프록시 캐시 구성 소개: 인터넷 시대에 웹 사이트 액세스 속도는 매우 중요합니다. 느리게 로드되는 웹사이트는 사용자를 참을성 없게 만들고 사용자 이탈로 이어질 수 있습니다. 웹 사이트의 접속 속도를 향상시키기 위한 일반적인 방법은 역방향 프록시 캐시를 사용하여 서버의 부하를 줄이고 페이지 로딩 속도를 높이는 것입니다. 이 기사에서는 Nginx를 사용하여 역방향 프록시 캐시를 구성하여 웹 사이트 액세스 속도를 향상시키는 방법을 소개합니다. 1. Nginx 역방향 프록시 캐시란 무엇입니까? 응긴

Nginx 프록시 관리자를 사용하여 역방향 프록시 부하 분산 전략 구현 Nginx 프록시 관리자를 사용하여 역방향 프록시 부하 분산 전략 구현 Sep 26, 2023 pm 12:05 PM

NginxProxyManager를 사용하여 역방향 프록시 로드 밸런싱 전략 구현 NginxProxyManager는 역방향 프록시 및 로드 밸런싱을 쉽게 구현하는 데 도움이 되는 Nginx 기반 프록시 관리 도구입니다. NginxProxyManager를 구성하면 요청을 여러 백엔드 서버에 분산하여 로드 밸런싱을 달성하고 시스템 가용성과 성능을 향상시킬 수 있습니다. 1. NginxProxyManager 설치 및 구성

See all articles