1

Wiki と同様の方法で、URL に基づいてデータベースから取得した情報を表示する非常に単純な ASP.NET アプリケーションを作成しようとしていますが、この場合、サイトは読み取り専用です。希望する URL の例は次のとおりです。

http://www.foo.com/bar

次に、アプリケーションは「bar」を SQL クエリ パラメータとして使用して、「bar」に一致するデータベースからの情報を表示します。

IIS6 用の多くの URL リライター オプションを調べましたが (これは専用サーバー上にあります)、このアプリケーションにどれを使用すればよいかまだわかりません。

おそらく明確にするために、1 つのdefault.aspxファイルからサイトを実行する必要があるだけですが、上記のように動作させたいと考えています。全体的なサイト ロジックは非常にシンプルになります。

この分野でより多くの経験を持つ誰かが私を助けてくれることを願っています-私はこの1つのシナリオに対処する最も簡単な解決策を探しています.

4

2 に答える 2

2

IIS6 は、その拡張機能が登録されている場合にのみ、asp.net エンジンに要求を送信します。デフォルトでは、登録されている拡張子は aspx ascx asmx などです。

クエリ文字列パラメーター (例: foo.com/default.aspx?query=bar) に基づいてデータベース クエリを実行できない場合、IIS6 で実行できる最善の方法は、ワイルドカード マッピングです。基本的に、これはすべてのリクエストが asp.net (イメージ スクリプトとスタイルを含む) に送信されることを意味します。明らかにパフォーマンスが低下します。

ワイルドカード マッピングを有効にするには、IIS マネージャーでサイトを右クリックし、[プロパティ] -> [ホーム ディレクトリ] -> [構成] -> [マッピング] の下部にある [挿入] をクリックして、asp.net isapi dll へのパスを入力します (上記の aspx 拡張子) を選択し、[ファイルが存在することを確認する] のチェックを外します。

変更を行った後、foo.com/bar をリクエストできるようになります。

(別の方法として、foo.com/default.aspx/bar にリクエストを送信することもできます)

于 2008-12-03T02:11:16.653 に答える
0

念のため、IIS URL Rewrite 2はこれをサポートしており、DBプロバイダーを含む拡張性サンプルをインストールできます。IIS7以降でのみ機能します。

http://www.iis.net/download/urlrewrite http://code.msdn.microsoft.com/rewriteextensibility

于 2010-12-06T04:35:31.873 に答える