2016-09-27 80 views

回答

0

在IIS(web.config中)的基本重定向規則可能看起來像:

  <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> 

你可以改變比賽的網址,但基本上這是匹配啓動中國汽車工業協會/驗證一切。然後它(另外)檢查查詢字符串中是否有「token =」,並捕獲它的值(它將進入捕獲1,因爲這裏沒有別的東西,例如{C:1})。

然後,我們輸出重定向爲/caam/verifying/default.aspx?{C:1}(例如,{C:1}爲「token = 12345」)。

請注意,如果URL匹配(caam/verifying部分)和參數匹配(這裏有「token =」部分),則此規則只會被觸發 - 否則此重定向規則會被跳過。

編輯

我添加了一個額外的「否定」規則比賽反對「的Default.aspx」頁面。

+0

我應用該解決方案,它正確地形成了URL,但是當我啓用該規則這給了錯誤 - 「此網頁有重定向循環 ERR_TOO_MANY_REDIRECTS」 –

+0

見編輯 - 這樣的規則不我已經添加了一個附加條件匹配default.aspx頁面 - 我認爲這是導致規則不斷匹配之前,所以不斷返回重定向代碼。 –

+0

現在這個工作。謝謝你的幫助。 –