Nginx 의 location 일치 규칙 소개

2616 단어
위치 일치 명령
~      #파도 선 은 정규 일치, 대소 문자 구분 을 실행 합 니 다 ~ *    #정규 일치 실행 을 표시 합 니 다. 대소 문 자 를 구분 하지 않 습 니 다 ^ ~    #^~일반 문자 가 일치 함 을 표시 합 니 다. 이 옵션 이 일치 하면 이 옵션 만 일치 하고 다른 옵션 과 일치 하지 않 으 며 디 렉 터 리 와 일치 합 니 다 =      #일반 문자 의 정확 한 일치 진행 @     #"@" 은 내부 에서 방향 을 정할 때 error 와 같은 이름 의 location 를 정의 합 니 다.page, try_files
location 에 맞 는 우선 순위 (location 설정 파일 의 순서 와 무관) = 정확 한 일치 가 첫 번 째 로 처 리 됩 니 다.정확 한 일치 가 발견 되면 nginx 는 다른 일치 하 는 검색 을 중단 합 니 다.일반 문자 가 일치 합 니 다. 정규 표현 식 규칙 과 긴 블록 규칙 이 우선 검색 과 일치 합 니 다. 즉, 이 항목 이 일치 하면 정규 표현 식 과 더 긴 일치 가 있 는 지 확인 해 야 합 니 다. ^ ~이 규칙 만 일치 합 니 다. nginx 는 다른 일치 하 는 검색 을 중단 합 니 다. 그렇지 않 으 면 nginx 는 다른 location 명령 을 계속 처리 합 니 다.마지막 으로 일치 하 는 이 치 는 '~' 과 '~ *' 의 명령 을 가지 고 있 습 니 다. 해당 하 는 일치 하 는 것 을 찾 으 면 nginx 는 다른 일치 하 는 것 을 검색 하지 않 습 니 다.정규 표현 식 이 없 거나 정규 표현 식 이 일치 하지 않 을 경우 일치 정도 가 가장 높 은 한 글자 씩 일치 하 는 명령 이 사 용 됩 니 다.
location 우선 순위 공식 문서
    =접두사 명령 은 이 조회 와 엄 격 히 일치 합 니 다.찾 으 면 검색 을 중단 합 니 다.    남 은 모든 일반적인 문자열, 가장 긴 일치.이것 이 일치 하면 ^?접두사    정규 표현 식, 설정 파일 에서 정 의 된 순서 입 니 다.    세 번 째 규칙 이 일치 하면 결 과 는 사 용 됩 니 다.그렇지 않 으 면 제2 조 규칙 에서 사 용 된 것 과 같다.
예컨대

   location  = / { 
  
  # "/".
  [ configuration A ]
}
location  / {
  # , "/"
  #
  [ configuration B ]
}
location ^~ /images/ {
  # /images/ , location
  [ configuration C ]
}
location ~* \.(gif|jpg|jpeg)$ {
  # gif, jpg, or jpeg .
  # /images/ [Configuration C] .  
  [ configuration D ]
}
 
location  = / {
  # "/".
  [ configuration A ]
}
location  / {
  # , "/"
  #
  [ configuration B ]
}
location ^~ /images/ {
  # /images/ , location
  [ configuration C ]
}
location ~* \.(gif|jpg|jpeg)$ {
  # gif, jpg, or jpeg .
  # /images/ [Configuration C] .  
  [ configuration D ]
}

요청 URI 예:

       / ->   configuration A 
  
    /documents/document.html -> configuration B
    /images/1.gif -> configuration C
    /documents/1.jpg -> configuration D

@location
error_page 404 = @fetch;

location @fetch(
proxy_pass http://fetch;
)

좋은 웹페이지 즐겨찾기