IIS 8.5のURL書き換えルールの作成に問題があります。私の専門知識を書くルールはほとんど中間ではなく、ドキュメンテーションは役に立たなかった。IIS URL書き換えルール - テストは機能しますが、結果はありません。
私は、次のURLリダイレクトしようとしている:このURLに
hostname.com/sub1/sub2/sub3/sub4
を:
hostname.com/sub1/sub6/sub7/SUB2/SUB4
そして、それによって、私は意味 -
- hostname.comは可変です。この単一の.NETアプリケーションによって提供される複数のホスト名があります。
- sub1は同じままであり、変数ではありません。
- sub2はパターンをトリガーする必要があるサブであり、 変数ではありませんが、URLの別の場所に移動します。
- 私は文字列 'sub1/sub2' へのURLを識別し、リダイレクトループを避けるためにパターンにハードコード化された を仮定します。
- sub3が削除されます。
- sub4は変数です。
- sub6とsub7は変数ではありません。
私は可変変数を誤って使用していることを知っています。変数の意味は、URLの部分が変更され、キャプチャされて後方参照として使用されるということです。
私は例を明確にしましょう:
https://hostname.com/application/catalog/v3g5h6j8k9/feline-footwear
へ - 失敗したルールを書くことで>
https://hostname.com/application/showcase/default/catalog/feline-footwear
すべての私の試み。私はすべてが間違っていると確信しています。
私はこれに近いと思った。パターンテストはすべて成功しましたが、着信URLは取得されません。 ( - + [-ZA-Z0-9 _ +])を代わりに
をまた、私はこのルールがインストールされている私も使ってみました
<rule name=“Catalog redir” enabled=“true” stopProcessing="true">
<match url=“^(.*)/application/catalog/(.*)/(.*)” />
<action type="Redirect" url=“{R:1}/application/showcase/default/catalog/{R:3}” redirectType="SeeOther" />
</rule>
:私はちょうど404を取得します(*)。ツリーの/アプリケーションレベルで、ルートではありません。これは間違っていますか?それとも、ウェブサイトツリーのルールの位置がパターンとどのように関係しているのでしょうか?私はドキュメントでもそれを見つけることができませんでした。
アドバイスを事前にいただきありがとうございます。