URL(DotNetNuke Friendly URL)を次のように書き換えたい:
出発地:/search.aspx?query=test
到着地:~/SearchResults?search=test
さまざまな組み合わせを試しましたが、疑問符の後のURLの部分が考慮されていないようです
<RewriterRule>
<LookFor>.*/search.aspx?query=(.+)</LookFor>
<SendTo>~/SearchResults?Search=$1</SendTo>
</RewriterRule>
しかし、それは動作しません..
私が試してみました:
<RewriterRule>
<LookFor>.*/search.aspx\?query=(.+)</LookFor>
<SendTo>~/SearchResults?Search=$1</SendTo>
</RewriterRule>
しかし、これは url に対しても機能しません/search.aspx?query=test
。search.aspx で 404 が返される
これは、DotNetNuke の web.config の関連部分です。
<friendlyUrl defaultProvider="DNNFriendlyUrl">
<providers>
<clear />
<add name="DNNFriendlyUrl"
type="DotNetNuke.Services.Url.FriendlyUrl.DNNFriendlyUrlProvider, DotNetNuke.HttpModules"
includePageName="true"
regexMatch="[^a-zA-Z0-9 _-]"
urlFormat="humanfriendly" />
</providers>
</friendlyUrl>
スキップする原因は何かありますか?
これは、使いやすい URL リライターのソース コードです。