운영 및 유지보수 엔진스 Nginx 초기화 구성 방법

Nginx 초기화 구성 방법

May 19, 2023 pm 03:22 PM
nginx

기본 개념

nginx는 역방향 프록시 서비스를 제공하는 데 가장 일반적으로 사용됩니다. 그렇다면 역방향 프록시란 무엇입니까? 나는 많은 본토 동포들이 이 마법의 땅에서 순방향 프록시를 사용했다고 믿습니다. 원칙은 대략 다음과 같습니다:

Nginx 초기화 구성 방법

프록시 서버는 요청을 수락하고 실제 고객을 숨기고 정보를 얻기 위해 클라이언트 측에서 중개자 역할을 합니다. 서버에서 요청합니다. 프록시 서버가 만리장성 외부에 있는 경우 만리장성을 넘는 목적을 달성하는 데에도 도움이 될 수 있습니다. 역방향 프록시는 이름에서 알 수 있듯이 프록시 서버를 서버의 중개자로 사용하여 실제로 서비스를 제공하는 서버를 숨기는 것입니다. 원칙은 대략 다음과 같습니다.

Nginx 초기화 구성 방법

물론 이것이 목적을 달성하려는 것은 아닙니다. 보안과 로드 밸런싱 및 일련의 기능을 달성하기 위한 것입니다. 소위 보안이란 클라이언트의 요청이 인트라넷 서버로 직접 전달되지 않고 프록시를 통해 전달된다는 의미입니다. 이 계층에서는 보안 필터링, 흐름 제어 및 DDoS 방지와 같은 일련의 전략을 구현할 수 있습니다. 로드 밸런싱이란 실제로 백엔드에서 서비스를 제공하는 서버의 수를 수평적으로 확장할 수 있다는 의미입니다. 에이전트는 규칙에 따라 각 서버에 요청을 전달하여 각 서버의 로드가 거의 균형을 이루도록 합니다.

그리고 nginx는 매우 인기 있는 역방향 프록시 서비스입니다.

우분투에서는 컴파일 및 설치 과정을 건너뛰고 직접 apt-get을 사용할 수 있습니다

코드 복사 코드는 다음과 같습니다.

sudo apt-get install nginx

설치 후 직접 사용할 수 있습니다.

코드를 복사하세요.

sudo service nginx start

nginx 서비스를 시작하려면 기본적으로 포트 80이 전달되어 있습니다. 브라우저에서 http://locallhost를 방문하면 확인할 수 있습니다.

초기 구성

nginx의 기본 구성 파일은

코드 복사에 있습니다. 코드는 다음과 같습니다:

/etc/nginx/nginx.conf

구성을 배우는 가장 좋은 방법은 예제로 시작하는 것입니다. 먼저 보지 말자 다른 구성에 대해서는 nginx 기본 페이지 관련 구성을 직접 참고하시기 바랍니다. 구성 파일에 다음 줄이 있습니다:

코드 복사 코드는 다음과 같습니다:

include /etc/nginx/sites-enabled/*;

이 줄은 외부 구성 파일을 로드하며 기본값은 하나만 있습니다. 사이트 활성화 폴더 파일 아래에 있는 이 외부 구성 파일은 nginx의 기본 프록시를 담당합니다. 구성 내용을 축소하면 다음 줄이 표시됩니다.

코드 복사 코드는 다음과 같습니다.


server {
server_name localhost;
listening 80 default_server;
listening [::]:80 default_server ipv6only=on;

root / usr/share/nginx/html;
index index.html index.htm;

location / {
try_files $uri $uri/ =404;
}
}

대규모 웹사이트에는 일반적으로 하위 사이트가 많이 있습니다. 각각은 해당 서비스를 제공하는 자체 서버를 가지고 있습니다. nginx에서는 가상 호스트라는 개념을 통해 이러한 다양한 서비스 구성을 격리할 수 있습니다. 이것이 위 구성에서 서버의 의미입니다. 예를 들어 Google에는 번역과 학술이라는 두 가지 제품이 있습니다. nginx 구성 파일에서 서버 이름은 각각translate.google.com과 학자.google.com입니다. nginx의 해당 설정으로 이동하여 다른 백엔드 서버로 전달합니다. 여기의 서버 이름은 클라이언트 http 요청의 호스트 줄과 일치합니다.

이 예에서 server_name은 localhost이므로 브라우저에서 localhost를 통해 페이지 구성에 액세스할 수 있습니다. 다음 두 수신은 각각 ipv4 및 ipv6의 수신 포트에 해당합니다. 8080으로 설정하면 localhost:8080을 통해서만 기본 페이지에 액세스할 수 있습니다.

default_server는 nginx에 존재하지 않는 다른 http 요청 호스트 설정이 있는 경우 이 서버의 구성이 사용됨을 의미합니다. 예를 들어, 127.0.0.1에 액세스하면 처리를 위해 이 서버에도 속하게 됩니다.

각 URL 요청은 nginx가 로컬 파일 경로 또는 다른 서버의 서비스 경로를 처리하고 전달하는 서비스에 해당합니다. 이 경로의 일치는 위치를 통해 수행됩니다. 서버는 도메인 이름에 해당하는 구성으로, 위치는 도메인 이름 아래의 보다 세부적인 경로 구성으로 생각할 수 있습니다.

위치 일치 /, 즉 localhost에서 /xxx 또는 /yyy로 시작하는 모든 요청은 이 단순하고 조악한 일치 외에도 nginx는 일반 일치, 정확한 일치 및 기타 정밀 일치 방법도 지원합니다. 그리고 tryfiles는 nginx가 다음 순서로 파일에 액세스하고 첫 번째로 일치하는 파일을 반환한다는 것을 의미합니다. 예를 들어, localhost/test를 요청하면 /test 파일을 찾고, 찾을 수 없으면 /test/를 찾습니다. 또한 위치 구성에서 Proxypass를 사용하여 역방향 프록시 및 로드 밸런싱을 구현할 수도 있지만 이 가장 간단한 구성에는

여기서 루트는 모든 URL 요청의 루트 경로로 로컬 폴더를 사용하는 것을 의미합니다. 예를 들어, 사용자가 localhost/test를 요청하면 nginx는 /usr/share/nginx/html 폴더에서 테스트 파일을 찾아 반환합니다.

그리고 index는 기본 액세스 페이지입니다. localhost에 액세스하면 루트 파일 경로에서 index.html 및 index.htm을 자동으로 검색하여 가장 먼저 찾은 결과를 반환합니다.

고급 위치 구성
위 구성은 사용자의 URL을 로컬 파일에 매핑할 뿐이며 전설적인 역방향 프록시 및 로드 밸런싱을 구현하지 않습니다(물론 nginx는 정적 파일 배포에도 매우 강력합니다). 구현 방법을 보려면 위치를 구성하세요.

구성이 매우 간단합니다. 예를 들어 실제로 서비스를 제공하는 시스템의 포트 8080으로 모든 요청을 전송하려면 다음을 수행하세요.

코드 복사 코드는 다음과 같습니다.

location / {
proxy_pass 123.34.56.67:8080 ;
}

이러한 방식으로 모든 요청은 123.34.56.67에 대한 역방향 프록시가 됩니다. 이런 식으로 역방향 프록시 기능이 구현되었습니다. 하지만 서버로 프록시할 수 있다면 어떻게 로드 밸런싱이 가능할까요? 이를 위해서는 nginx의 업스트림 모듈이 필요합니다.

코드 복사 코드는 다음과 같습니다.


upstream backend {
ip_hash;
server backend1.example.com;
server backend2.example.com;
server backend3.example.com;
server backend4.example. com ;
}
location / {
  Proxy_pass http://backend;
}

업스트림에 머신 그룹을 지정하고 이 그룹의 이름을 백엔드로 지정했기 때문에 Proxypass에서는 요청을 백엔드 업스트림으로만 전송하면 됩니다. . 4개의 시스템에 역방향 프록시와 로드 밸런싱을 구현했습니다. iphash는 우리의 균형 잡힌 방법이 사용자의 IP 주소에 따라 할당하는 것임을 나타냅니다.

구성을 적용하려면 nginx를 다시 시작할 필요가 없으며 구성을 다시 로드하기만 하면 됩니다.

코드 복사 코드는 다음과 같습니다.

sudo 서비스 nginx reload

위 내용은 Nginx 초기화 구성 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

뜨거운 주제

PHP 코드를 작성한 후 PHP 코드를 실행하는 방법은 무엇입니까? PHP 코드를 실행하는 몇 가지 일반적인 방법 PHP 코드를 작성한 후 PHP 코드를 실행하는 방법은 무엇입니까? PHP 코드를 실행하는 몇 가지 일반적인 방법 May 23, 2025 pm 08:33 PM

PHP 코드는 여러 가지 방법으로 실행될 수 있습니다. 1. 명령 줄을 사용하여 "PHP 파일 이름"을 직접 입력하여 스크립트를 실행합니다. 2. 파일을 문서 루트 디렉토리에 넣고 웹 서버를 통해 브라우저를 통해 액세스하십시오. 3. IDE에서 실행하고 내장 디버깅 도구를 사용하십시오. 4. 온라인 PHP 샌드 박스 또는 코드 실행 플랫폼을 사용하여 테스트하십시오.

nginx, 구성 파일 경로 및 초기 설정을 설치 한 후 nginx, 구성 파일 경로 및 초기 설정을 설치 한 후 May 16, 2025 pm 10:54 PM

Nginx의 구성 파일 경로와 초기 설정을 이해하는 것은 웹 서버를 최적화하고 관리하는 첫 단계이기 때문에 매우 중요합니다. 1) 구성 파일 경로는 일반적으로 /etc/nginx/nginx.conf입니다. 구문은 nginx-t 명령을 사용하여 찾아서 테스트 할 수 있습니다. 2) 초기 설정에는 전역 설정 (예 : 사용자, Worker_Processes) 및 HTTP 설정 (예 : log_format)이 포함됩니다. 이러한 설정은 요구 사항에 따라 사용자 정의 및 확장을 허용합니다. 잘못된 구성으로 인해 성능 문제와 보안 취약점이 발생할 수 있습니다.

Linux의 사용자 리소스를 제한하는 방법은 무엇입니까? Ulimit을 구성하는 방법? Linux의 사용자 리소스를 제한하는 방법은 무엇입니까? Ulimit을 구성하는 방법? May 29, 2025 pm 11:09 PM

Linux System은 Ulimit 명령을 통해 사용자 리소스를 제한하여 자원의 과도한 사용을 방지합니다. 1. ulimit은 파일 설명자 수 (-n), 메모리 크기 (-v), 스레드 카운트 (-u) 등을 제한 할 수있는 내장 된 쉘 명령입니다. 2. ULIMIT-N2048과 같은 임시 수정을 위해 ULIMIT 명령을 직접 사용하지만 현재 세션에는 유효합니다. 3. 영구적 인 효과를 위해서는 /etc/security/limits.conf 및 pam 구성 파일을 수정하고 sessionRequiredPam_limits.so를 추가해야합니다. 4. SystemD 서비스는 단위 파일에서 lim을 설정해야합니다.

Debian Nginx 구성 기술은 무엇입니까? Debian Nginx 구성 기술은 무엇입니까? May 29, 2025 pm 11:06 PM

Debian 시스템에서 Nginx를 구성 할 때 다음은 실질적인 팁입니다. 구성 파일의 기본 구조 글로벌 설정 : 작업자 스레드 수 및 실행 사용자의 권한과 같은 전체 NGINX 서비스에 영향을 미치는 동작 매개 변수를 정의하십시오. 이벤트 처리 부분 : NGINX가 네트워크 연결을 처리하는 방법을 결정하는 것은 성능 향상을위한 주요 구성입니다. HTTP 서비스 부품 : HTTP 서비스와 관련된 많은 설정이 포함되어 있으며 여러 서버 및 위치 블록을 포함시킬 수 있습니다. 코어 구성 옵션 worker_connections : 각 작업자 스레드가 처리 할 수있는 최대 연결 수를 정의하고 일반적으로 1024로 설정합니다. Multi_accept : 다중 연결 수신 모드를 활성화하고 동시 처리 능력을 향상시킵니다. 에스

Nginx의 목적 : 웹 컨텐츠에 서비스를 제공합니다 Nginx의 목적 : 웹 컨텐츠에 서비스를 제공합니다 May 08, 2025 am 12:07 AM

nginxserveswebcontentandactsasareverseproxy, loadbalancer, andmore.1) itefficientservesstaticcontentikehtmllandimages.2) itfunctionsAresAreSeareverseProxyAndloadbalancer, 분배 TrafficacrossServers.3) nginxenhancesperformancethroughcaching.4) Itofferssecur

Nginx 서비스의 자체 시작을 구성하는 특정 단계 Nginx 서비스의 자체 시작을 구성하는 특정 단계 May 16, 2025 pm 10:39 PM

nginx 구성을 시작하는 단계는 다음과 같습니다. 1. Systemd 서비스 파일 생성 : Sudonano/etc/systemd/system/nginx.service 및 관련 구성을 추가합니다. 2. SystemD 구성을 다시로드 : sudosystemctldaemon-reload. 3. nginx가 자동으로 부팅 할 수 있도록 활성화 : sudosystemctlenablenginx. 이러한 단계를 통해 NGINX는 시스템이 시작되면 자동으로 실행되므로 웹 사이트 또는 응용 프로그램의 안정성 및 사용자 경험을 보장합니다.

NGINX 문제 해결 : 일반적인 오류 진단 및 해결 NGINX 문제 해결 : 일반적인 오류 진단 및 해결 May 05, 2025 am 12:09 AM

Nginx의 일반적인 오류에 대한 진단 및 솔루션에는 다음이 포함됩니다. 1. 로그 파일보기, 2. 구성 파일 조정, 3. 성능 최적화. 로그를 분석하고 시간 초과 설정을 조정하고 캐시 및로드 밸런싱 최적화를 통해 웹 사이트 안정성 및 성능을 향상시키기 위해 404, 502, 504와 같은 오류를 효과적으로 해결할 수 있습니다.

Debian Apache2의 SEO 최적화 기술은 무엇입니까? Debian Apache2의 SEO 최적화 기술은 무엇입니까? May 28, 2025 pm 05:03 PM

Debianapache2의 SEO 최적화 기술은 여러 수준을 다룹니다. 키워드 리서치 : Keyword Magic Tools와 같은 도구 (예 : 키워드 마법 도구)를 사용하여 페이지의 핵심 및 보조 키워드를 채굴합니다. 고품질 컨텐츠 생성 : 귀중하고 독창적 인 컨텐츠를 생산하며, 부드러운 언어와 명확한 형식을 보장하기 위해 심층적 인 연구를 수행해야합니다. 콘텐츠 레이아웃 및 구조 최적화 : 제목과 자막을 사용하여 읽기를 안내합니다. 간결하고 명확한 단락과 문장을 작성하십시오. 목록을 사용하여 주요 정보를 표시하십시오. 사진 및 비디오와 같은 멀티미디어를 결합하여 표현을 향상시킵니다. 빈 디자인은 텍스트의 가독성을 향상시킵니다. 기술 수준 SEO 개선 : robots.txt 파일 : 검색 엔진 크롤러의 액세스 권한을 지정합니다. 웹 페이지로드 가속화 : 캐싱 메커니즘 및 Apache 구성의 도움으로 최적화

See all articles