2012-10-18 4 views
0

IIS7의 URL 재 작성 모듈에 문제가 있습니다. 이런 유형의 문제에 관한 여러 게시물을 읽었으므로 알아낼 수 없습니다.IIS7 URL 재 작성을 사용하여 URL을 다시 쓸 수 없습니다.

<rule name="Imported Rule 11" stopProcessing="true"> 
    <match url="/s\/([\w\%20\s]+)\/default\.aspx" /> 
    <action type="Rewrite" url="\/landingpage.aspx\?mc={R:1}" 
    logRewrittenUrl="true" /> 
</rule> 

나는 다음과 같은 이전의 ISAPI의 INI 필터에서 수입 :

RewriteRule ^\/s\/([\w\-\_\%20\s]+)\/default\.aspx \/landingpage.aspx\?mc=$1 [L,I] 

나는 그것을 얻기 위해 조금 정규 표현식을 조정할했다 여기

은 규칙입니다 내장 된 테스터와 함께 작동하지만 URL과 일치합니다.

/s/RETQ211CA/default.aspx 

로그에 따르면 요청은 다음과 같이 전달됩니다.

2012-10-18 15:41:54 ::1 GET /s/RETQ211CA/default.aspx - 80 - ::1 Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+6.1;+WOW64;+Trident/4.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+.NET4.0C;+.NET4.0E) 404 0 0 1468 

로컬 또는 인터넷을 통해 발생합니다.

누군가 내가 정확하게 여기에서 잘못하고 있다고 말할 수 있습니까?

감사합니다.

답변

1

다음 규칙은 트릭을 할 것입니다 :

s\/([\w\%20\s]+)\/default\.aspx 

당신은 ^이 규칙을 시작하고 원하는 경우 $로 종료 할 수 있습니다.

URL 재 작성은 사용자가 루트라고 가정하기 때문에 혼란 스럽습니다.

+0

그랬습니다! 왜 내가이 방법으로 처음으로 작동하지 않았는지 모르겠다. – wali

관련 문제