私は最近、Webアプリケーションを.Net 3.5から.Net 4に移行し、IIS 7.5でアプリケーションプールを統合モードに変更しました。このアプリは2つの部分から構成されています。最初の部分は公開され、2番目の部分はログインのみです。ASP.Net IIS 4でのフォーム認証 - 既定のドキュメントがなくなった
<authorization>
<deny users="?" />
</authorization>
:私は以下のようなものを、認証されていないユーザーを拒否するために、デフォルトの権限を持っているルートweb.configファイルで
<authentication mode="Forms">
<forms loginUrl="~/private/login.aspx" protection="All" timeout="20" name=".ASPXAUTH" path="/" requireSSL="false" slidingExpiration="true" defaultUrl="~/private/default.aspx" cookieless="UseCookies" enableCrossAppRedirects="true" />
</authentication>
:私は、ルートweb.configファイルにthusly configuedされるログインのフォーム認証を使用します
<location path="Default.aspx">
<system.web>
<authorization>
<allow users="?,*" />
</authorization>
</system.web>
01:しかし、私は誰もが歓迎のページを見ることができるように、ルートweb.configファイルで構成され、以下の設定を持っています
これは長年にわたりうまくいっていますが、URLに明示的にDefault.aspxを入れないと、フォームリダイレクトモジュールによってログインページが提供されます。私は私のデフォルトページが正しく設定されていることを確認し、IIS7で有効になっています。私もweb.configで指定しようとしました。私はDefaultDocumentModuleがDirectoryListingモジュールの前に配列されていることを確認しました。
要素を削除した場合、問題は「消え去る」が、すべてのユーザーを許可するようにデフォルトに設定されていますが、これは完全に望ましくありません。
私はアイデアがありません。提案?
おかげ
I
Default.aspxはルートWebサイトのリストの一番上にあります。私のサイトはそれを継承しています。私もこれを試した: defaultDocument> –
paulv7260