2

サイトを php Apache サイトから asp.net mvc サイトに移動しました。特定のリダイレクトを機能させようとしていますが、スタックしています。

基本的に、 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>

さまざまなページに実装する必要がある、これらの特定のリダイレクトが約 12 個あります。

どんな助けでも大歓迎です!ありがとう

4

1 に答える 1

3

これを試してください:

<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>
于 2012-05-14T01:53:10.910 に答える