Nginx 매 칭 프로 세 스 일람
nginx location 일치 하 는 우선 순위
location 에 서 는 모두 5 가지 일치 하 는 모드 가 있 습 니 다.
종류.
서법
none
location 에 일치 하 는 패턴 이 지정 되 어 있 지 않 습 니 다. 접두사 로 일치 합 니 다. 검색 을 멈 추 지 않 고 다음 location 의 내용 과 계속 일치 합 니 다.
=
location 에 서 는 뒤에 설 정 된 내용 과 정확하게 일치 해 야 합 니 다. 일치 하 는 데 성공 하면 검색 을 중단 합 니 다.
=
location 의 내용 과 대소 문자 가 민감 한 방식 으로 일치 합 니 다.
~
location 의 내용 과 대소 문자 가 민감 하지 않 은 방식 으로 일치 합 니 다.
~*
정규 가 아 닌 방식 으로 가장 좋 은 일치 하 는 내용 을 찾 으 면 여기 서 멈 추고 존재 할 수 있 는 정규 일치 하 는 것 을 검색 하지 않 습 니 다.
이 다섯 가지 기본 매 칭 을 본 후에 도 이해 하기 어 려 울 수 있 습 니 다. 다음은 Nginx 의 시각 으로 매 칭 과정 을 모 의 할 것 입 니 다.
모든 요청 에 있어 Nginx 는 설정 한 여러 location 블록 중에서 가장 적합 한 설정 블록 을 선택 하여 클 라 이언 트 의 응답 을 제공 합 니 다.가장 좋 은 선택 을 찾기 위해 모든 요청 이 올 때 다음 과 같은 절 차 를 수행 합 니 다.
^~
과 같은 내용 을 찾 으 면 이 location 설정 을 요청 한 서버 로 즉시 선택 합 니 다.=
로 시작 하 는 location 블록 이 없 으 면 Nginx 는 접두사 와 일치 하 는 location 설정 블록 을 검색 하고 가장 긴 접두사 와 일치 하 는 location 를 선택 하여 판단 합 니 다.=
포함 되면 Nginx 는 검색 을 중단 하고 이 location 을 선택 하여 서 비 스 를 제공 합 니 다.^~
, 즉 none 형식 이 라면 Nginx 는 현 재 를 임시 참고 로 계속 아래로 검색 합 니 다.쉽게 말 하면 일치 하 는 우선 순 위 는:
^~
> =
> ^~
> ~
> none 입 니 다.일치 과정 구체 적 인 예:
Nginx location 에 대해 다음 과 같은 설정 을 했다 고 가정 합 니 다.
location = / {
[ configuration A ]
}
location / {
[ configuration B ]
}
location /documents/ {
[ configuration C ]
}
location ^~ /images/ {
[ configuration D ]
}
location ~* \.(gif|jpg|jpeg)$ {
[ configuration E ]
}
~*
는 검색 의 첫 번 째 이 고 가장 높 은 우선 순위 가 있 기 때 문 입 니 다.=
대표 적 인 설정 블록 이 일치 하지 않 으 면 접두사 의 최 장 일치 가 시 작 됩 니 다. 이때 D 가 만족 하고 D 는 =
유형 이 므 로 D 를 선택 합 니 다.^~
대표 적 인 설정 블록 이 일치 하지 않 아 최 장 접두사 매 칭 을 시작 합 니 다. 이 때 E 가 만족 하지만 E 는 =
유형 이 아니 기 때문에 임시 방안 으로 계속 아래로 매 칭 합 니 다.E 가 정규 일치 하고 일치 하 는 것 을 발견 하면 E 선택 을 끝 냅 니 다.^~
대표 적 인 설정 블록 매 칭 에 실 패 했 습 니 다. 최 장 접두사 매 칭 을 시작 합 니 다. 이때 B 가 만족 하지만 B 는 =
형식 이 아 닙 니 다. 임시로 저장 하고 계속 일치 합 니 다.적당 한 정규 매 칭 을 찾 을 수 없 음 을 발견 하 였 습 니 다.그래서 토 크 방안 B 가 선택 되 었 습 니 다.레 퍼 런 스
Nginx-doc-location
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.