我的asp.net 4.0 Web窗体应用程序出现问题,不允许匿名访问登录页面。
我的问题如下
我正在使用VS2010在Windows 7/64上进行测试。我的web.config部分看起来像
<authentication mode="Forms">
<forms name=".xxxxADAuthCookie" loginUrl="~/Login.aspx" timeout="45"
defaultUrl="~/secure/Default.aspx" slidingExpiration="true" />
</authentication>
<membership defaultProvider="MyADMembershipProvider">
<providers>
<clear />
<add attributeMapUsername="sAMAccountName" name="MyADMembershipProvider"
type="xxxxx.xxxxxxFormsAuthenticationMembershipProvider" />
</providers>
</membership>
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
<location path="default.aspx">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>
答案 0 :(得分:0)
检查你的Web.config:defaultUrl =&#34;〜/ secure / Default.aspx&#34; &#34; / secure /&#34;您在上述层次结构中未提及的文件夹。
另一个选择:尝试在Global.asax.cs中强制默认路由(类似这样:)
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "website", action = "default", id = UrlParameter.Optional }
答案 1 :(得分:0)
我认为您可以设置 loginUrl = defaultUrl 。
<forms name=".xxxxADAuthCookie" loginUrl="~/secure/Default.aspx" timeout="45"
defaultUrl="~/secure/Default.aspx" slidingExpiration="true" />
<location path="login.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
再试一次。