Nginx 역방향 프록시는 도메인 이름을 설정하고 전달을 우아하게 구현합니다.
개요
웹 개발에서 요청을 전달하기 위해 프록시가 필요한 상황에 자주 직면합니다. 고성능 웹 서버인 Nginx는 역방향 프록시를 통해 요청을 전달할 수 있으므로 효율적인 로드 밸런싱 및 동적 구성을 달성할 수 있습니다.
Nginx 리버스 프록시의 기본 원리는 클라이언트의 요청을 Nginx 서버로 보내고, Nginx 서버는 요청을 실제로 처리하는 백엔드 서버로 전달하는 것입니다. 도메인 이름을 설정하면 서로 다른 도메인 이름의 요청에 대해 서로 다른 프록시 전달 규칙을 구현할 수 있습니다.
도메인 이름 설정
도메인 이름의 프록시 전달을 구현하려면 먼저 도메인 이름 확인을 구성해야 합니다. 전달해야 하는 두 개의 도메인 이름, 즉 www.example1.com과 www.example2.com이 있다고 가정합니다. 이 두 도메인 이름을 DNS 서비스 공급자의 콘솔에서 Nginx 서버의 IP 주소로 확인할 수 있습니다.
다음으로 Nginx 구성 파일에서 도메인 이름에 대한 프록시 전달 규칙을 설정해야 합니다. 일반적으로 /etc/nginx/nginx.conf에 있는 Nginx 구성 파일을 열고 서버 블록을 찾은 다음 서버 블록에서 해당 도메인 이름과 전달 규칙을 구성합니다.
샘플 코드는 다음과 같습니다.
server { listen 80; server_name www.example1.com; location / { proxy_pass http://backend1; proxy_set_header Host $host; } } server { listen 80; server_name www.example2.com; location / { proxy_pass http://backend2; proxy_set_header Host $host; } }
위 코드에서는 먼저 서버 블록을 정의하고, 포트 80을 수신하도록 listening 명령을 설정하고, server_name 명령은 도메인 이름을 www.example1.com으로 설정합니다. 위치 블록의 구성 지시어인 Proxy_pass는 요청 전달 대상이 http://backend1임을 지정합니다. Proxy_set_header 지시어는 요청 헤더의 Host 필드를 $host로 설정하여 요청의 신뢰성을 유지합니다.
마찬가지로 다른 서버 블록을 추가하고 server_name을 www.example2.com으로 설정하고 Proxy_pass를 http://backend2로 설정합니다.
전달 대상 구성
위 구성에서는 backend1과 backend2를 전달 대상으로 사용했습니다. 이 두 대상은 도메인 이름, IP 주소 또는 UNIX 도메인 소켓일 수 있는 백엔드 서버의 주소를 참조합니다.
이 두 전달 대상을 실제로 요청을 처리하는 백엔드 서버와 연결하려면 Nginx 구성 파일의 http 블록 내에 업스트림 블록을 추가해야 합니다. 샘플 코드는 다음과 같습니다.
http { upstream backend1 { server backend1.example.com; } upstream backend2 { server backend2.example.com; } }
위 코드에서 우리는 두 개의 업스트림 블록은 서버 지시어를 통해 백엔드 서버의 주소를 backend1 및 backend2와 연결하도록 정의됩니다. 그 중 backend1.example.com과 backend2.example.com은 실제로 요청을 처리하는 백엔드 서버의 주소이다.
Restart Nginx
도메인 이름과 전달 대상 구성을 완료한 후 Nginx 서버를 다시 시작해야 구성이 적용됩니다. 다시 시작하려면 터미널에 다음 명령을 입력하세요.
sudo service nginx restart
그런 다음 www.example1.com 및 www.example2.com을 방문하여 전달이 올바르게 설정되었는지 테스트할 수 있습니다.
요약
도메인 이름과 전달 규칙을 설정하여 Nginx의 역방향 프록시를 구현하고 요청을 다른 백엔드 서버로 전달할 수 있습니다. 이를 통해 전달 규칙을 유연하게 구성하고 효율적인 로드 밸런싱 및 동적 구성을 달성할 수 있습니다. 동시에 Nginx는 역방향 프록시의 기능을 더욱 확장하고 더 많은 요구 사항을 충족할 수 있는 풍부한 모듈과 기능도 제공합니다.
위 내용은 Nginx 리버스 프록시는 도메인 이름을 설정하고 전달을 우아하게 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

NGINX는 이벤트 중심 아키텍처 및 비동기 처리 기능을 통해 성능을 향상시키고 모듈 식 설계 및 유연한 구성을 통해 확장 성을 향상 시키며 SSL/TLS 암호화 및 요청 속도 제한을 통해 보안을 향상시킵니다.

NGINX는 동시성이 높은 자원 소비 시나리오에 적합하지만 APACHE는 복잡한 구성 및 기능 확장이 필요한 시나리오에 적합합니다. 1.NGINX는 고성능과의 많은 동시 연결을 처리하는 것으로 알려져 있습니다. 2. Apache는 안정성과 풍부한 모듈 지원으로 유명합니다. 선택할 때는 특정 요구에 따라 결정해야합니다.

nginxissentialderformodernwebapplicationsduetoitsrolessareareverseproxy, loadbalancer 및 Webserver, HighperformanceAndscalability를 제공합니다

Nginx를 통해 웹 사이트 보안을 보장하려면 다음 단계가 필요합니다. 1. 기본 구성을 만들고 SSL 인증서 및 개인 키를 지정하십시오. 2. 구성 최적화, HTTP/2 및 OCSPStapling 활성화; 3. 인증서 경로 및 암호화 제품군 문제와 같은 공통 오류 디버그; 4. Let 'sencrypt 및 세션 멀티플렉싱 사용과 같은 응용 프로그램 성능 최적화 제안.

NGINX는 고성능 HTTP 및 리버스 프록시 서버로 높은 동시 연결을 처리하는 데 능숙합니다. 1) 기본 구성 : 포트를 듣고 정적 파일 서비스를 제공합니다. 2) 고급 구성 : 리버스 프록시 및로드 밸런싱을 구현하십시오. 3) 디버깅 기술 : 오류 로그를 확인하고 구성 파일을 테스트하십시오. 4) 성능 최적화 : GZIP 압축을 활성화하고 캐시 정책을 조정합니다.

Nginx 캐시는 다음 단계를 통해 웹 사이트 성능을 크게 향상시킬 수 있습니다. 1) 캐시 영역을 정의하고 캐시 경로를 설정하십시오. 2) 캐시 유효성 기간 구성; 3) 다른 컨텐츠에 따라 다른 캐시 정책을 설정합니다. 4) 캐시 저장 및로드 밸런싱을 최적화합니다. 5) 캐시 효과를 모니터링하고 디버그합니다. 이러한 방법을 통해 NGINX 캐시는 백엔드 서버 압력을 줄이고 응답 속도 및 사용자 경험을 향상시킬 수 있습니다.

dockercompose를 사용하면 Nginx의 배포 및 관리를 단순화 할 수 있으며 Dockerswarm 또는 Kubernetes를 통한 스케일링은 일반적인 관행입니다. 1) DockerCompose를 사용하여 Nginx 컨테이너를 정의하고 실행하십시오. 2) Dockerswarm 또는 Kubernetes를 통한 클러스터 관리 및 자동 스케일링 구현.

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


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

드림위버 CS6
시각적 웹 개발 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.
