0

この「http://192.111.111.111:8020/1B3KC46K48N6228671/20120524/1B3KC46K48N62286711_l1.jpg」を書き換えるルールを作成しました

"http://192.111.111.111:8020/1B3KC46K48N62286711_l1.jpg?vin=1B3KC46K48N6228671&dt=20120524"

ルールは:

 <rule name="Redirect VIN">
      <match url="^(\w*)/(\d*)/(\w*.jpg)$" />
      <action type="Rewrite" url="{R:3}?vin={R:1}&amp;dt={R:2}" />
 </rule>

上記のルールを「リダイレクト」として適用すると、その動作は完全に正常になります。しかし、「リライト」として適用すると、機能せず、空白のページが表示されます。

任意の提案をいただければ幸いです。ありがとうございます。

4

1 に答える 1

0

これが私が提案することです。現在、テストマシンにアクセスできないため、テストされていません。

<rule name="Redirect VIN">
     <match url="^(\w+)/(\d+)/(\w+\.jpg)$" />
     <action type="Rewrite" url="/{R:3}?vin={UrlEncode:{R:1}}&amp;dt={UrlEncode:{R:2}}" />
</rule>

私はあなた\w*\d*を置き換えて、少なくとも1つの文字(マイナーなもの)を必要\w+とするようにしました。\d+また、文字通りドットと一致するように変更.jpgしまし\.jpgた。そうしないと、ドットは正規表現文字として解釈されます。つまり、任意の文字と一致します。

私が思うあなたの主な問題は、リライトURLが。で始まるべきだということ/です。さらに{UrlEncode{...}}、パラメータを適切にエンコードするためにを追加しました(例では問題ありませんが、念のため)。私が言ったように、私はそれをテストすることはできませんが、これはうまくいくはずだと思います。

于 2012-06-07T21:48:06.940 に答える