2013-02-14 4 views
3

URL 리핑 (리디렉션)을 한 번도 한 적이 없습니다. 웹 사이트가 http://sub.sub.domain.ext/app/입니다. "응용 프로그램"은 가상 디렉터리가 아니라 "응용 프로그램"을 의미합니다. 사용자가 http://sub.sub.domain.ext/app (슬래시 없음)으로 이동하면 IIS 7을 사용하여 슬래시가있는 URL로 리디렉션해야합니다.간단한 후행 슬래시 URL 다시 쓰기

사용자가 응용 프로그램을 탐색 할 때 적용 할 규칙은 입니다. 모든 파일 이름에 후행 슬래시를 추가하는 것을 원하지 않습니다.

IIS7 관리자에서 미리 정의 된 규칙을 수정하려고했지만 성공하지 못했습니다. 나는 전체 URL을 정확히 일치 시키거나, 조건을 제한하거나, 단순히 원래의 미리 정의 된 규칙을 사용하여 시도했다. 그러나 원본 규칙을 사용하더라도 모든 후속 요청 파일/디렉토리/URL을 다시 쓰지만, 이 아닌http://sub.sub.domain.ext/app에서 http://sub.sub.domain.ext/app/으로 사용자를 리디렉션합니다.

답변

3

당신처럼 간단 수 있습니다 찾고있는 규칙 :

<rule name="Add trailing slash" stopProcessing="true"> 
    <match url="^app$" negate="false" /> 
    <action type="Redirect" url="{R:0}/" /> 
</rule> 

url="^app$" 패턴은 URL 만 http://www.yourwebsite.com/app와 아무것도 일치합니다.
호스트 sub.sub.domain.ext이 동작을 제한해야하는 경우 조건 추가 할 수 있습니다

<rule name="test" stopProcessing="true"> 
    <match url="^app$" negate="false" /> 
    <action type="Redirect" url="{R:0}/" /> 
    <conditions> 
     <add input="{HTTP_HOST}" pattern="^sub.sub.domain.ext$" /> 
    </conditions> 
</rule>