03 nginx lcoation 설정 쓰기
3313 단어 nginx
식별 자
묘사 하 다.
=
정확 한 일치;표준 uri 에 사용 하기 전에 요청 문자열 이 uri 와 엄 격 히 일치 하도록 요구 합 니 다.일치 에 성공 하면 일치 하지 않 고 이 location 의 요청 을 즉시 실행 합 니 다.
~
정규 일치;정규 uri 에 사용 하기 전에 uri 에 정규 가 포함 되 어 있 음 을 나타 내 고 대소 문 자 를 구분 합 니 다.
~*
정규 일치;정규 uri 앞 에 사용 하면 uri 에 정규 가 포함 되 어 있 고 대소 문 자 를 구분 하지 않 습 니 다.
^~
비정규 일치;표준 uri 에 사용 하기 전에 nginx 서버 가 접두사 가 가장 많은 uri 와 일치 하면 끝 납 니 다. 이 모드 가 일치 하면 정규 매 칭 을 사용 하지 않 습 니 다.
없다
일반 일치 (최 장 문자 일치);location 순서 와 상 관 없 이 일치 하 는 장단 점 에 따라 일치 하 는 결 과 를 얻 습 니 다.완전히 일치 하면 일치 하지 않 습 니 다.
비고:
1. uri 에 정규 표현 식 이 포함 되 어 있 으 면 ~ 또는 ~ * 식별 자 를 사용 해 야 합 니 다.
2 、 ~ * 와 일치 하 는 식별 자 를 앞에서 추가 할 수 있 습 니 다!반대로 다음 과 같다.
!~정규 가 일치 하지 않 음 을 나타 내 고 대소 문 자 를 구분 합 니 다.
!~*정규 가 일치 하지 않 고 대소 문 자 를 구분 하지 않 음 을 나타 낸다.
2. location 매 칭 실전
2.1 "=" 정확 한 일치 사례
location = /login {
# /login , ,
}
2.2 "~" 대소 문자 구분 정규 일치 사례
location ~ /images/ {
# , , ,
}
2.3 "~ *" 대소 문자 정규 일치 사례 구분 없 음
location ~* /images/ {
# , , ,
}
2.4 "^ ~" 정규 일치 하 는 표준 일치 하지 않 음
location ^~ /images/ {
# /images/ , , , 。
}
2.5 일반 일치 (최 장 문자 일치)
location /blog/ {
# location
# , ,
}
3 일치 우선 순위 (일치 순서)
식별 자가 없 는 요청 에서 일치 하 는 규칙 은 다음 과 같 습 니 다.
1. nginx 서버 는 먼저 server 블록 의 여러 location 블록 에서 표준 uri 와 요청 문자열 이 일치 하 는 지 검색 합 니 다.여러 표준 uri 가 일치 할 수 있다 면 일치 도가 가장 높 은 location 와 일치 합 니 다.
2. 그리고 nginx 는 location 블록 에서 정규 uri 와 요청 문자열 을 사용 하여 일치 합 니 다.정규 일치 에 성공 하면 일치 하 는 것 을 끝내 고 이 위치 로 요청 을 처리 합 니 다.정규 일치 에 실패 하면 표준 uri 에서 일치 도가 가장 높 은 location 을 사용 합 니 다.
비고:
1. 정확 한 일치 가 있 으 면 먼저 정확 한 일치, 일치 성공, 즉시 결 과 를 되 돌려 줍 니 다.
2. 일반적인 매 칭 은 순서 와 무관 합 니 다. 일치 하 는 길이 에 따라 일치 하 는 결 과 를 얻 기 때 문 입 니 다.
3. 정규 매 칭 은 순서 와 관련 이 있 습 니 다. 위 에서 아래로 매 칭 되 기 때 문 입 니 다.(우선 일치 하면 분석 과정 을 끝 냅 니 다)
4. location 에서 통 일 된 location 이 있 습 니 다. 모든 요청 이 일치 할 수 있 습 니 다. 다음 과 같 습 니 다.
location / {
# / ,
#
}
식별 자 를 결합 하여 일치 하 는 순 서 는 다음 과 같 습 니 다.
(location =) > (location 전체 경로) > (location ^ ~ 경로) > (location ~, ~ * 정규 순서) > (location 부분 시작 경로) > (location /) 즉: (정확 한 일치) > (최 장 문자열 은 일치 하지만 완전히 일치) > (정규 가 아 닌 일치) > (최 장 문자열 은 일치 하고 완전히 일치 하지 않 음) > (location 연결)
실천 하 다.
location = / {
// / ,
echo " A";
}
location = /login {
// /login , ,
echo " B";
}
location ^~ /blog/ {
// , /blog/ , ,
echo " C";
}
location ~ \.(gif|jpg|png|js|css)$ {
// , ,
echo " D";
}
location ~* \.png$ {
// , ,
echo " E";
}
location / {
// / ,
// ,
echo " F";
}
location /blog/detail {
// , , ,
echo " G";
}
location /images {
// ,
echo " Y";
}
location ^~ /static/files {
// , ,
echo " X";
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.