2012-05-14 242 views
0

我們已將我們的網站從一個php apache站點移動到一個asp.net mvc站點,並試圖讓特定的重定向工作但陷入困境。將特定頁面重定向到iis web.config中的另一個特定頁面

基本上我想爲http://www.mysite.com/index.php?pr=about_us的任何請求重定向到http://www.mysite.com/About-Us

我已經試過,但它不工作。有任何想法嗎?

<rewrite> 
    <rules> 
    <rule name="About Us" stopProcessing="true"> 
     <match url="index.php?pr=About_Us" ignoreCase="false" /> 
     <action type="Redirect" redirectType="Permanent" url="http://www.mysite.com/About-Us" /> 
    </rule> 
    </rules> 
</rewrite> 

我也試過這個,但它也沒有工作。

<httpRedirect enabled="true" exactDestination="true" httpResponseStatus="Permanent"> 
    <add wildcard="index.php?pr=About_Us" destination="/About-Us" /> 
</httpRedirect> 

我有大約一打這些特定的重定向,我需要實現各種頁面。

任何幫助,非常感謝! 感謝

回答

2

試試這個:

<rule name="About Us" stopProcessing="true"> 
    <match url="^(.*)$"> 
     <conditions> 
      <add input="{URL}" pattern="index.php?pr=About_Us" /> 
     </conditions> 
    </match> 
    <action type="Redirect" redirectType="Permanent" url="http://www.mysite.com/About-Us" /> 
</rule> 

編輯

這是條件的另一種可能性:

<conditions logicalGrouping="MatchAll"> 
    <add input="{QUERY_STRING}" pattern="?pr=About_Us" /> 
    <add input="{REQUEST_FILENAME}" pattern="index.php" /> 
</conditions> 

編輯 - 工作液

<rule name="About Us" stopProcessing="true"> 
    <match url="^(.*)$" /> 
    <conditions logicalGrouping="MatchAll"> 
     <add input="{QUERY_STRING}" pattern="/?pr=About_Us$" /> 
     <add input="{REQUEST_FILENAME}" pattern="index.php" /> 
    </conditions> 
    <action type="Redirect" redirectType="Permanent" url="http://www.mysite.com/About-Us" /> 
</rule>