0

私が今持っている方法では、Default.aspx は空で、Default.aspx.cs へのコード ビハインドがあり、リクエストが認証されているかどうかに応じて、Login.aspx または Home.aspx にリダイレクトされます。

Default.aspx は何もしていません。これにはもっとエレガントなアプローチが必要なようです。

どんなアイデアも素晴らしいでしょう!

4

3 に答える 3

2

私の意見では、これを行う最もエレガントな方法は、web.config を利用することです。ここで、認証されていないユーザーが自動的にリダイレクトされるログイン ページを指定できます。

<authentication mode="Forms">
  <forms loginUrl="~/Login/LogOn.aspx" />
</authentication>
<authorization>
  <deny users="?"/>
</authorization>

これとは別に、現在のフォルダー内のページへのアクセスをどのユーザーに許可するかを、承認タグを介して指定することもできます。

于 2012-08-22T15:43:21.413 に答える
0

いいえ、IIS は、既定のドキュメントとして機能するプレースホルダーがあることを認識する必要があります。

編集: これらを変更することは技術的に可能ですが、長期的には価値がありません。慣例に従い、home.aspx を default.aspx に移動することをお勧めします。

于 2012-08-22T15:29:11.537 に答える
0

これは IIS レベルで構成する必要があります。つまり、Defaultアプリのランディング ページを に構成できますHome.aspx。ユーザーがログインしていない場合は、Home.aspx自動的にリダイレクトするLogin.aspx必要があります。以下の IIS マネージャーのスクリーンショットを参照してください。

ここに画像の説明を入力

リストから WebApp を選択します --> [既定のドキュメント] をダブルクリックします。

于 2012-08-22T15:29:23.680 に答える