私が今持っている方法では、Default.aspx は空で、Default.aspx.cs へのコード ビハインドがあり、リクエストが認証されているかどうかに応じて、Login.aspx または Home.aspx にリダイレクトされます。
Default.aspx は何もしていません。これにはもっとエレガントなアプローチが必要なようです。
どんなアイデアも素晴らしいでしょう!
私が今持っている方法では、Default.aspx は空で、Default.aspx.cs へのコード ビハインドがあり、リクエストが認証されているかどうかに応じて、Login.aspx または Home.aspx にリダイレクトされます。
Default.aspx は何もしていません。これにはもっとエレガントなアプローチが必要なようです。
どんなアイデアも素晴らしいでしょう!
私の意見では、これを行う最もエレガントな方法は、web.config を利用することです。ここで、認証されていないユーザーが自動的にリダイレクトされるログイン ページを指定できます。
<authentication mode="Forms">
<forms loginUrl="~/Login/LogOn.aspx" />
</authentication>
<authorization>
<deny users="?"/>
</authorization>
これとは別に、現在のフォルダー内のページへのアクセスをどのユーザーに許可するかを、承認タグを介して指定することもできます。
いいえ、IIS は、既定のドキュメントとして機能するプレースホルダーがあることを認識する必要があります。
編集: これらを変更することは技術的に可能ですが、長期的には価値がありません。慣例に従い、home.aspx を default.aspx に移動することをお勧めします。
これは IIS レベルで構成する必要があります。つまり、Default
アプリのランディング ページを に構成できますHome.aspx
。ユーザーがログインしていない場合は、Home.aspx
自動的にリダイレクトするLogin.aspx
必要があります。以下の IIS マネージャーのスクリーンショットを参照してください。
リストから WebApp を選択します --> [既定のドキュメント] をダブルクリックします。