[iis-7] IIS URL 재 작성 {R : N} 설명

{R : N}의 목적을 이해하지 못했습니다. 사용할 때 사람이 명확히 주시겠습니까
{R:0}대를{R:1}

사용 예 :

<action type="Redirect" url="http://www.{HTTP_HOST}/{R:0}" />

{R : 1}을 사용하는 ScottGu를 보았습니다

http://weblogs.asp.net/scottgu/archive/2010/04/20/tip-trick-fix-common-seo-problems-using-the-url-rewrite-extension.aspx

반면 아래에는 {R : 0}이 있습니다.

http://weblogs.asp.net/owscott/archive/2009/11/27/iis-url-rewrite-rewriting-non-www-to-www.aspx

아래의 IIS 링크를 살펴 보았지만 아래 정의를 충분히 이해하지 못했습니다.

조건 패턴에 대한 역 참조는 {C : N}으로 식별됩니다. 여기서 N은 0에서 9까지입니다. 규칙 패턴에 대한 역 참조는 {R : N}으로 식별되며 여기서 N은 0에서 9까지입니다. 두 유형의 역 참조에 대해 {R : 0} 및 {C : 0}은 일치하는 문자열을 포함합니다.



답변

문서에 따라 :

ECMAScript 패턴 구문을 사용하는 경우 역 참조를 캡처해야하는 패턴 부분을 괄호로 묶어 역 참조를 만들 수 있습니다.

따라서 문서에서 다음 예제를 사용하십시오.

^(www\.)(.*)$

조건www.foo.com 에서 입력 문자열 을 사용하면 다음과 같은 결과를 얻을 수 있습니다.

{C:0} - www.foo.com
{C:1} - www.
{C:2} - foo.com

간단하게하려면 :

  • {R:x}규칙 패턴 ( <match url="...">) 에서 역 참조로 사용됩니다 .
  • {C:x}조건 패턴 ( <conditions><add input="{HTTP_HOST}" pattern="..."></conditions>) 에서 역 참조로 사용됩니다.
  • 0참조는 전체 입력 문자열을 포함
  • 1참조는 괄호 안의 첫 번째 패턴과 일치하는 문자열의 첫 번째 부분 포함될 ()상기 2참조 번호를 참조하여 두 번째, 등 … 최대9

노트 :

“와일드 카드”패턴 구문을 사용하는 경우 패턴에 별표 기호 (*)가 사용되면 항상 역 참조가 생성됩니다. “?”인 경우 역 참조가 생성되지 않습니다. 패턴에 사용됩니다.

http://www.iis.net/learn/extensions/url-rewrite-module/url-rewrite-module-configuration-reference#Using_back-references_in_rewrite_rules


답변