2017-01-21 6 views
2

다음의 3 가지 지시문에는 차이점이 있습니까?Nginx "location ~." 대 "위치 ~ * ."

location ~* \.(png)$ { 
    expires max; 
    log_not_found off; 
} 

location ~ \.(png)$ { 
    expires max; 
    log_not_found off; 
} 

location ~ .(png)$ { 
    expires max; 
    log_not_found off; 
} 

지금까지 시간을내어 주셔서 감사합니다.

+0

이들은 서버 블록이 아닙니다. 더하기이 주제는 OFF – Rafael

답변

1

이들은 정규 표현식 위치 블록의 세 가지 형태입니다. 자세한 내용은 this document을 참조하십시오.

~* 연산자는 테스트 케이스를 구분하지 않습니다.

. 문자는 정규 표현식에서 특별한 의미가 있습니다. 하나의 문자와 일치합니다 (쉘 globs에서 ?처럼).

\. 시퀀스 (이스케이프 된 점)는 리터럴 점 문자와 일치합니다. 이것은 세 번째 예제가 아마도 당신이 원하는 것이 아님을 의미합니다 (여러분이 .png으로 끝나는 URI를 일치 시키려한다고 가정 할 때).

정규 표현식에 대한 자세한 내용은 this document을 참조하십시오.

+0

"Agent Smith"매우 감사합니다! – Evan