2

urlrewriting.config ファイルに素敵な URL 書き換えを設定しました。これらはうまく機能します。ただし、拡張子が .aspx のすべてのページを正しいページにリダイレクトしたいと考えています。

例えば:

この URL を入力すると:

バウチャー結果.aspx?term=Home_and_Garden

これにリダイレクトしたい:

/vouchersresults/Home_and_Garden

どちらの URL も正常に機能しますが、サイトで .aspx を使用したくありません。

URLrewriting.config でこの小さなコードを試してみましたが、いくつかのクエリ文字列値を使用して作成したページとは別に、うまく機能します。

<add name="301RedirectDirUrls"
   redirectMode="Permanent"
   redirect="Application"
   ignoreCase="true"
   rewriteUrlParameter="IncludeQueryStringForRewrite"
   virtualUrl="^\/(?!(umbraco\/|data\/|install\/|usercontrols\/|umbraco_client\/))(.*)\.aspx"
   destinationUrl="$1/$2" />

このページ (/VouchersResults/Home_and_Garden/) のページング ボタンをクリックすると、ポストバックが発生し、URL が醜いものに変更されます。

/VouchersResults/?term=Home_and_Garden

これを引き起こしている可能性のあるアイデアはありますか?

ありがとう

4

1 に答える 1

2

aspx の削除は umbraco に組み込まれています。umbracoUseDirectoryUrls を true に設定します

web.config appsettings 内

<add key="umbracoUseDirectoryUrls" value="true" />

URL 書き換えに関しては、URL 書き換えを使用して IIS でこれを行う場合は、これを行います。

^vouchersresults/([^/]+)?$
于 2012-10-11T18:57:04.030 に答える