Windows Server 2012 に Web コンポーネント経由で IIS Rewrite 2.0 モジュールをインストールしました。
いくつかの記事を読みましたが、単純な書き直しがうまくいかないようです。
に書き換えhttp://www.acme.com/news/13/Jan/20
たいhttp://www.acme.com/news.html#20-Jan-13
これは私が使用しているルールです:
<rule name="news articles" stopProcessing="true">
<match url="^news\/(.*)\/(.*)\/(.*)$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="news.html#{R:3}-{R:2}-{R:1}" appendQueryString="false" />
</rule>
テストパターンとして適用するhttp://www.acme.com/news/13/Jan/20
と、書き換えが機能します。
ただし、参照するhttp://www.acme.com/news/13/Jan/20
と 404 エラーが発生します。
Requested URL http://www.acme.com/news.html#20-Jan-13
Physical Path C:\Webs\acme.com\www\news.html#20-Jan-13
物理ファイル news.html が存在し、直接参照できます。
物事を台無しにしているのはそれですか?明らかに C:\Webs\acme.com\www\news.html#20-Jan-13 は物理ファイルではありませんが、この問題を解決する方法がわかりません。
もちろん、問題なくhttp://www.acme.com/news.html#20-Jan-13を直接参照できます。
誰でも助けてもらえますか?
よろしくお願いします。
乾杯、マーク