Nginx 경로 일치 규칙, 어댑터

2836 단어 Nginx
Nginx 경로 일치 기호
  • = 정확하게 일치 함 을 나타 낸다
  • ^ ~ uri 는 일반적인 문자열 로 시작 합 니 다. 대부분 url 경 로 를 일치 시 키 는 경우 가 많 습 니 다. nginx 는 url 에 인 코딩 을 하지 않 기 때문에 / static / 20% / aa 로 요청 합 니 다. 규칙 ^ ~ / static / / aa 에 일치 할 수 있 습 니 다 (빈 칸 주의).
  • ~ 정규 일치 (대소 문자 구분)
  • ~ * 정규 일치 (대소 문자 구분 없 음)
  • !~와!대소 문자 의 일치 하지 않 음 과 대소 문자 의 일치 하지 않 음 을 구분 하 는 정규
  • / 모든 요청 이 일치 합 니 다
  • 기호의 우선 순위
    우선 일치 =, 그 다음 일치 ^ ~, 그 다음은 파일 의 순서 에 따라 정규 일치, 마지막 으로 전달 / 통용 일치.일치 가 성공 하면 일치 하지 않 고 현재 일치 하 는 규칙 에 따라 요청 을 처리 합 니 다.
    예, 다음 과 같은 일치 규칙 이 있 습 니 다.
    location = / {  
       #  A  
    }  
    location = /login {  
       #  B  
    }  
    location ^~ /static/ {  
       #  C  
    }  
    location ~ \.(gif|jpg|png|js|css)$ {  
       #  D  
    }  
    location ~* \.png$ {  
       #  E  
    }  
    location !~ \.xhtml$ {  
       #  F  
    }  
    location !~* \.xhtml$ {  
       #  G  
    }  
    location / {  
       #  H  
    }  

    루트 디 렉 터 리 /, 예 를 들 어http://localhost/ 일치 하 는 규칙 A
    방문 하 다.http://localhost/login 일치 하 는 규칙 B 를,http://localhost/register 일치 하 는 규칙 H
    방문 하 다.http://localhost/static/a.html 일치 하 는 규칙 C
    방문 하 다.http://localhost/a.gif, http://localhost/b.jpg 일치 하 는 규칙 D, 규칙 E 는 작 동 하지 않 습 니 다.http://localhost/static/c.png 규칙 C 에 우선 일치
    방문 하 다.http://localhost/a.PNG 규칙 E 는 대소 문 자 를 구분 하지 않 기 때문에 규칙 D 와 일치 하지 않 습 니 다.
    방문 하 다.http://localhost/a.xhtml 규칙 F 와 규칙 G 가 일치 하지 않 습 니 다.http://localhost/a.XHTML대소 문 자 를 구분 하지 않 기 때문에 규칙 G 와 일치 하지 않 습 니 다.규칙 F, 규칙 G 는 배제 법 에 속 하고 일치 하 는 규칙 에 부합 되 지만 일치 하지 않 기 때문에 실제 응용 에서 어디 에 사용 되 는 지 생각해 보 세 요.
    방문 하 다.http://localhost/category/id/1111 마지막 으로 규칙 H 에 일치 합 니 다. 상기 규칙 이 일치 하지 않 기 때문에 이 때 는 nginx 리 트 윗 요청 이 백 엔 드 응용 서버 에 있어 야 합 니 다. 예 를 들 어 FastCGI (phop), tomcat (jsp), nginx 는 방향 프 록 시 서버 로 존재 합 니 다.
    단순 공통 설정
    정적 동적 분리, 정적 자원 을 제외 한 요청 은 모두 Tomcat 에 맡 깁 니 다.
    location / {  
        proxy_pass http://localhost:8080
    }  
    
    location ^~ /static/ {  
        root /webroot/static/;  
    }  
    
    location ~* \.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {  
        root /webroot/res/;  
    }  

    좋은 웹페이지 즐겨찾기