私は、IISとReact Router v4で動作するルートをBrowserRouterを使用して取得しようとしています。React Router v4のIISルール
私のローカルホストには、すべてのルートが期待どおりに機能しています。反応するルータは、私はそれをしたいようにすべてを扱う:IISで、私は無視するルールを設定して、今すぐ
- http://www.example.com/appfolder/dest
- http://www.example.com/appfolder/dest/CODE
- http://www.example.com/appfolder/dest/CODE/INVALID/URL
「/ appfolder/API/* '私のアプリのAPIを提供する目的のために。それは動作します。
IISに「http://www.example.com/appfolder/dest/CODE」にリダイレクトされるようにするにはどうすればいいですか?リアクタールーターにルールに従って処理させるにはどうすればよいですか。私が '/appfolder/index.html'にリダイレクトすると、ReactRouterが処理するために残しておきたい 'CODE'が緩んでいます。
regexpキャプチャグループを使用して 'http://www.example.com/appfolder/dest/CODE'にリダイレクトしようとすると、「ERR_TOO_MANY_REDIRECTS」が表示されます。
私は現在、私のweb.configファイルで、このルールを持っている:
<rule name="ReactRouter Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/appfolder/api/" negate="true" />
</conditions>
<action type="Redirect" url="/appfolder/dest/CODE" />
<!-- also tried this -->
<!-- action type="Redirect" url="/appfolder/index.html" /-->
</rule>