2016-09-27 9 views
0

쿼리 문자열과 함께 페이지 이름을 추가URL 다시 쓰기 - 나는 내 Web.config의에서 물건을 다시 작성 일부 URL을 추가 할 URL

소스 URL : http://constant.com/caam/verifying/?token=kpG1TwYo2KqTS%2bKg%2fY6lVm2Gt

하는 URL로 변환해야합니다 http://constant.com/caam/verifying/default.aspx?token=kpG1TwYo2KqTS%2bKg%2fY6lVm2Gt

이 제안이나 다른 제안을 달성하는 방법에 대한 아이디어는 많이 감사하겠습니다. 당신은 일치하는 URL을 변경할 수 있습니다

  <rule name="Token Redirect" stopProcessing="true"> 
       <match url="caam/verifying.*" /> 
       <conditions trackAllCaptures="true"> 
        <add input="{QUERY_STRING}" pattern="&amp;?(token=[^&amp;]+)&amp;?" /> 
        <add input="{REQUEST_URI}" pattern="default.aspx" negate="true" /> 
       </conditions> 
       <action type="Redirect" url="/caam/verifying/default.aspx?{C:1}" appendQueryString="false" redirectType="Found" /> 
      </rule> 

하지만, 기본적으로이 CAAM/검증을 시작합니다 모든 것을 일치한다 :

답변

0

IIS (Web.config의)의 기본 리디렉션 규칙은 다음과 같을 수 있습니다.

그런 다음 (추가적으로) 어딘가에 쿼리 문자열에 "token ="이 있는지 확인하고 그 값을 캡처합니다 (예 : {C : 1}).

그런 다음 리디렉션을 /caam/verifying/default.aspx?{C:1} (예 : {C : 1}은 "token = 12345")으로 출력합니다.

이 규칙은 URL이 일치하면 (caam/검증 부분) 매개 변수가 일치합니다 ("token ="부분이 있음) -이 리디렉션 규칙은 건너 뛰게됩니다.

편집

나는 "의 default.aspx"페이지에 하지 일치에 추가 "부정"규칙을 추가했습니다.

+0

이 솔루션을 적용하면 URL이 올바르게 형성되지만이 규칙을 사용하면 "이 웹 페이지에 리디렉션 루프가 있습니다. ERR_TOO_MANY_REDIRECTS" –

+0

편집 참조 - 추가 조건을 추가 했으므로 규칙에 포함되지 않습니다. default.aspx 페이지와 일치합니다. 이전에 계속 규칙을 일치시키는 원인이되어 리디렉션 코드가 계속 반환되었습니다. –

+0

이것은 이제 효과가있었습니다. 당신의 도움을 주셔서 감사합니다. –