2

スタック オーバーフローのようなきれいな URL 構造を取得する最善の方法は何ですか?

これには IIS を使用する必要がありますか? または、asp .net のある種のマッピング ファイルを使用してそれを行う方法はありますか?

これが必要なサイトには何百ものページがあり、既に展開されています。
可能な限り変更が少ない方法を希望します。

ノート:

  • URLを使いやすくする方法についての提案は望まない
  • これらのフレンドリ URL を最適に管理する方法と、マッピングを作成する方法についての提案が必要です。

私は基本的に、aspx で終わる各パスに aspx 拡張子を付けず、その中に index.aspx があるフォルダーのように見せたいと考えています。

http://www.blahblahblahblahblah7CEE53E1.com/test.aspx

->

http://www.blahblahblahblahblah7CEE53E1.com/test/

編集: IIS 6.0 を実行しています

4

5 に答える 5

3

おそらくurlMappingsがあなたのために働くかもしれません:

<system.web>
  <urlMappings enabled="true">
    <add url="~/test/" mappedUrl="~/test.aspx"/>
  </urlMappings>

IIS6 で動作させるには、ワイルドカード マッピングを有効にします。

于 2008-10-19T12:06:04.733 に答える
3

私が理解していることから、あなたはマッピングを支援するツールを探しています。

その場合は、url 書き換えモジュール (iis7)の「ユーザー フレンドリ url - ルール テンプレート」機能を試すことができます。

ルール テンプレートは、特定のシナリオ用に 1 つ以上の書き換えルールを作成する簡単な方法を提供するために使用されます。URL リライタ モジュールには、いくつかの一般的な使用シナリオ用のいくつかのルール テンプレートが含まれています。その URL 書き換えモジュール UI に加えて、カスタム ルール テンプレートをプラグインするためのフレームワークが提供されます。

于 2008-10-19T04:00:18.477 に答える
2

StackoverflowはSystem.Web.Routingを使用します。もともとはasp.netMVCからのものですが、どのasp.netアプリでも使用できます。ただし、ルーティングを既存のアプリに後付けするのがどれほど簡単か難しいかはわかりません。

于 2008-10-19T05:35:29.920 に答える
2

Ionic Rewriterというツールを使っています

正規表現を使用して、処理のために拡張子のない URL を物理的な URL に書き換えます。ユーザーには拡張子のないものしか表示されませんが、Web サーバーには .aspx などのファイルが表示されます。

非常にうまく機能しているようで、構成も非常に簡単です。

于 2008-10-19T11:52:35.650 に答える
1

i dont know if IIS6.0 supports it or not, but i use web.sitemap, i add an attribute with every node that equals the pretty name i want, then with Application_onBegin I map the pretty url of the request to the one in the sitemap...

you asked for the best way, but I dont think there is one "best" way, Ive seen people feed the pretty names from an xml file, others rely on IIS7.0 rewrite feature

于 2009-07-02T22:03:50.140 に答える