WEB,WAS

[WEB] Nginx 에서 $1 과 $args 차이

IT-PAPA 2024. 2. 6. 06:58
반응형

Nginx에서 $1 및 $args는 각각 정규 표현식에서 캡처된 그룹과 쿼리 문자열을 나타내는 변수입니다. 다음은 각각에 대한 설명입니다:

$1:

  • 정규 표현식에서 괄호로 둘러싸인 부분을 캡처하는 데 사용됩니다.
  • 예를 들어, 만약 당신이 다음과 같은 정규 표현식을 가지고 있다면, 이때 $1은 괄호로 둘러싸인 부분에 해당하는 값을 가지게 됩니다.
location ~ /example/(.*) {
    # 여기서 $1은 정규 표현식에서 괄호로 둘러싸인 부분에 해당합니다.
    # 예를 들어, /example/test일 경우 $1은 "test"가 됩니다.
    # 이 값을 사용하여 요청을 처리할 수 있습니다.
    ...
}

$args:

  • 현재 요청의 쿼리 문자열을 나타냅니다.
  • 예를 들어, 만약 /example?param1=value1&param2=value2와 같은 요청이 들어왔다면, $args는 param1=value1&param2=value2와 같은 문자열이 됩니다.
  • 이를 사용하여 쿼리 문자열을 추출하거나 다른 부분에 포함시킬 수 있습니다.

예를 들어, 다음은 $1과 $args를 함께 사용한 Nginx의 간단한 예제입니다:

location ~ /example/(.*) {
    # $1은 정규 표현식에서 괄호로 둘러싸인 부분에 해당합니다.
    # $args는 현재 요청의 쿼리 문자열을 나타냅니다.
    # 여기서는 이를 합쳐서 새로운 URI로 리다이렉션합니다.
    rewrite ^ /newpath/$1?$args permanent;
}

이 예제에서는 /example/로 시작하는 URI를 /newpath/로 리다이렉션하고, 쿼리 문자열은 그대로 유지됩니다.

 

 

 

728x90
반응형
LIST